Gnuplot командно-декларативная программ для рисования графиков. Может быть использована для отрисовки функций или просто наборов точек в двух- и трех- мерном пространстве.
Программа является свободно распространяемой.
Быстрый старт
Для того, чтобы нарисовать график в CustisWiki, достаточно указать набор команд в тэгах
<plot>...</plot>. Основные команды состоят из задания области определения функции (для одномерных графиков это переменная «x», для двухмерных «x», «y»), и команды отрисовки одномерной или двухмерной функции, заданной в символьном виде.
Синтаксис функции интуитивно понятен, «+», «-», «*», «/» обозначают стандартные арифметические операторы (умножение должно быть явным, никаких математических сокращений типа «3x» и т. п.), «**» означает возведение в степень, скобки "(", «)» используются для задания приоритета.
<plot>
set xrange [-5:+5]
plot 3*x**4 + 4*x - 2/3
</plot>
![](/images/generated/plot/b/b0/b002d610647016af50f698d359e6da4d/plot.source.png)
gnuplot> set encoding utf8
^
line 0: expecting one of 'default', 'iso_8859_1', 'iso_8859_2', 'iso_8859_15', 'cp437', 'cp850', 'cp852', 'koi8r' or 'koi8u'
Could not find/open font when opening font Arial, using default
Кроме операторов, есть набор стандартных математических функций:
- Тригонометрические функции sin, cos, tan, константа pi, и им обратные asin, acos, atan.
- Гиперболические функции sinh, cosh, tanh.
- Экспонента exp и натуральный и десятичный логарифмы: log и log10 соответственно.
Чтобы нарисовать несколько графиков на одном листе, нужно перечислить их через запятую:
<plot>
set xrange [0:+10]
plot 3*log(x), 5*sin(x)
</plot>
![](/images/generated/plot/e/eb/eb9e546b00f9417d86f03e73c3142e94/plot.source.png)
gnuplot> set encoding utf8
^
line 0: expecting one of 'default', 'iso_8859_1', 'iso_8859_2', 'iso_8859_15', 'cp437', 'cp850', 'cp852', 'koi8r' or 'koi8u'
Could not find/open font when opening font Arial, using default
Трехмерные графики
Трехмерные графики рисуются аналогично, нужно задать диапазоны для области определения и использовать команду «splot»
<plot>
set xrange [-10:+10]
set yrange [-10:+10]
splot -x**3-y
</plot>
![](/images/generated/plot/5/5c/5c7548cf1be6a7b6e5d8c1d15a4c6007/plot.source.png)
gnuplot> set encoding utf8
^
line 0: expecting one of 'default', 'iso_8859_1', 'iso_8859_2', 'iso_8859_15', 'cp437', 'cp850', 'cp852', 'koi8r' or 'koi8u'
Could not find/open font when opening font Arial, using default
Графики дискретных величин
![](/images/generated/plot/8/8a/8a27dd92142408e13a477fc190d17581/plot.source.png)
gnuplot> set encoding utf8
^
line 0: expecting one of 'default', 'iso_8859_1', 'iso_8859_2', 'iso_8859_15', 'cp437', 'cp850', 'cp852', 'koi8r' or 'koi8u'
Could not find/open font when opening font Arial, using default
Продвинутым пользователям
Gnuplot:Краткое введение
Cсылки
- Домашная страница проекта
- http://www.gnuplot.info/
- Введение в Gnuplot (на английском языке)
- http://www.cs.uni.edu/Help/gnuplot/
- Онлайн-документация
- http://gnuplot.sourceforge.net/docs/gnuplot.html#plot
Статья реплицируется в SMWiki, SBWiki, RDWiki, GZWiki, DPWiki, HRWiki, CBWiki, ORWiki.
Статья реплицируется в ToolsWiki.