gnuplot - gnuplot

гнуплот
Gnuplot ellipsoid.svg
Трехмерный рендеринг эллипсоида с помощью gnuplot
изначальный выпуск 1986 ; 35 лет назад ( 1986 )
Стабильный выпуск 5.4.2 (28 мая 2021 г . ; 2 месяца назад ) [±] ( 2021-05-28 )
Предварительный выпуск 5.5 [±]
Репозиторий Отредактируйте это в Викиданных
Написано в C
Тип Сюжет
Лицензия гнуплот
Интернет сайт gnuplot .info

Gnuplot является командной строкой и GUI программы , которая может генерировать двух- и трехмерный графики из функций , данных и припадков данных . Программа работает на всех основных компьютерах и операционных системах ( Linux , Unix , Microsoft Windows , macOS , FreeDOS и многих других). Это программа с довольно долгой историей, восходящей к 1986 году. Несмотря на свое название, это программное обеспечение не является частью проекта GNU .

Функции

gnuplot может производить вывод прямо на экран или во многих форматах графических файлов, включая Portable Network Graphics (PNG), Encapsulated PostScript (EPS), Scalable Vector Graphics (SVG), JPEG и многие другие. Он также способен создавать код LaTeX, который может быть включен непосредственно в документы LaTeX, используя шрифты LaTeX и мощные возможности записи формул. Программу можно использовать как в интерактивном, так и в пакетном режиме с использованием скриптов.

gnuplot может считывать данные в нескольких форматах, включая возможность считывать данные на лету, созданные другими программами ( трубопровод ), создавать несколько графиков на одном изображении, делать 2D, 3D, контурные графики, параметрические уравнения, поддерживает различные линейные и нелинейные координаты системы, проекции, считывание и представление географических и временных данных, блочные диаграммы различных форм, гистограммы, метки и другие настраиваемые элементы на графике, включая формы, текст и изображения, которые могут быть установлены вручную, вычислены с помощью сценария или автоматически из ввода данные.

gnuplot также предоставляет возможности создания сценариев, циклов, функций, обработки текста, переменных, макросов, произвольной предварительной обработки входных данных (обычно по столбцам), а также возможность выполнять нелинейную многомерную подгонку взвешенных данных с несколькими наборами (см. Кривая подгонка и алгоритм Левенберга – Марквардта ).

Ядро Gnuplot код программируется в C . Модульные подсистемы для вывода через Qt , wxWidgets и LaTeX / TikZ / ConTeXt написаны на C ++ и Lua .

gnuplot в интерактивном использовании.

Приведенный ниже код создает график справа.

set title "Some Math Functions"
set xrange [-10:10]
set yrange [-2:2]
set zeroaxis
plot (x/4)**2, sin(x), 1/x
Образец видео

Название этой программы было изначально выбрано, чтобы избежать конфликтов с программой под названием «newplot», и изначально было компромиссом между «llamaplot» и «nplot».

Поддержка ежедневного и недельного форматов эпидемии в версии 5.4.2 является результатом потребности в данных о пандемии коронавируса.

Доступна версия 5.5 для разработчиков.

Условия распространения

Лицензия gnuplot
Автор Томас Уильямс, Колин Келли
Опубликовано 1986 - 1993, 1998, 2004 гг.
Идентификатор SPDX гнуплот
Совместимость с Debian FSG да
ФСПО утверждено да
OSI одобрено да
GPL совместимый Нет
Авторское лево Нет
Интернет сайт https://sourceforge.net/p/gnuplot/gnuplot-main/ci/master/tree/Copyright

Несмотря на название gnuplot, он не назван в честь проекта GNU , не является его частью и не связан с ним , а также не использует Стандартную общественную лицензию GNU . Это было названо как часть компромисса первоначальных авторов, играющих на gnu (животное) и новый сюжет .

Официальный исходный код gnuplot распространяется бесплатно, а его модифицированные версии - нет. Лицензия gnuplot позволяет вместо этого распространять исправления для официальных выпусков, необязательно вместе с официально выпущенным исходным кодом. Двоичные файлы могут распространяться вместе с неизмененным исходным кодом и любыми исправлениями, примененными к нему. Контактная информация должна быть предоставлена ​​вместе с производными работами для технической поддержки модифицированного программного обеспечения.

Предоставляется разрешение на изменение программного обеспечения, но не право на распространение полного измененного исходного кода. Модификации распространяются как патчи к выпущенной версии.

Несмотря на это ограничение, gnuplot принят и используется многими пакетами GNU и широко включен в дистрибутивы Linux, включая более строгие, такие как Debian и Fedora . Определение открытого исходного кода OSI и Рекомендации по свободному программному обеспечению Debian специально предусматривают ограничения на распространение измененного исходного кода при наличии явного разрешения на распространение как исправлений, так и исходного кода.

Новые модули gnuplot (например, драйверы Qt, wxWidgets и cairo) были предоставлены на условиях двойного лицензирования, например gnuplot + BSD или gnuplot + GPL.

Графические интерфейсы и программы, использующие gnuplot

Некоторые сторонние программы имеют графические пользовательские интерфейсы, которые можно использовать для создания графиков с использованием gnuplot в качестве механизма построения графиков. К ним относятся:

Другие программы, использующие gnuplot, включают:

  • GNU Octave , математический язык программирования
  • statist, программа на базе терминала
  • gplot.pl предоставляет более простой интерфейс командной строки.
  • feedgnuplot обеспечивает отображение сохраненных данных и данных в реальном времени из канала.
  • ElchemeaAnalytical, программа построения графиков и подгонки импедансной спектроскопии, разработанная DTU Energy
  • Надстройка Gnuplot для MS-Excel
  • Calc, калькулятор GNU Emacs

Программные и прикладные интерфейсы

gnuplot можно использовать для графических данных из различных языков программирования, включая Perl (через PDL и другие пакеты CPAN ), Python (через gnuplotlib , Gnuplot-py и SageMath ), R через ( Rgnuplot ), Julia (через Gaston.jl ), Java (через JavaGnuplotHybrid и jgnuplot ), Ruby (через Ruby Gnuplot ), Ch (через Ch Gnuplot ), Haskell (через Haskell gnuplot ), Fortran 95 , Smalltalk ( Squeak и GNU Smalltalk ) и Rust (через RustGnuplot ).

gnuplot также поддерживает конвейер , что типично для скриптов. Для графики, управляемой скриптами, gnuplot - одна из самых популярных программ.

Форматы вывода Gnuplot

Gnuplot позволяет отображать или сохранять графики несколькими способами:

  • На приставке (режимы вывода тупой, шестилетний)
  • В окне рабочего стола (режимы вывода qt, wxt, x11, aquaterm, win, ...)
  • Встраивается в веб-страницу (режимы вывода svg, HTML5, png, jpeg, анимированный gif, ...)
  • Форматы файлов, предназначенные для обработки документов (режимы вывода PostScript, PDF, cgm, emf, варианты LaTeX, ...)

Смотрите также

использованная литература

Дополнительная литература и внешние ссылки