Gnuplot:Краткое введение

From Wiki4Intranet
Jump to: navigation, search

Как использовать

Основной смысл Gnuplot — формальное описание графиков функций и диаграмм, на некотором, Domain Specific Language, с возможностью автоматического получения изображений отрисованных диаграмм в векторных и растровых форматах.

[svg]

В Wiki4Intranet для вставки графика нужно использовать тег «plot», после чего, в случае корректной формулировки будут получены векторная (SVG) и растровая (PNG) картинки, оформленные так, что при поддержке SVG броузером, для просмотра и печати используется именно векторная картинка, но на худой конец, есть и поддерживаемая всеми броузерами растровая картинка. Если синтаксис Gnuplot-формулировки был некорректен — вместо диаграммы будет распечатано сообщение об ошибке.

[svg]

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

Основные объекты

Покажем основные понятия/объекты, которыми оперирует Gnuplot, а также их взаимосвязи.

Диаграмма

Note.svg Используем стандартную нотацию:

  • по умолчанию — связь «один-к-одному»;
  • связь с «лапкой» — это связь «один-ко-многим»;
  • «пустой круг» — «необязательность» со стороны круга;
  • «заполненный круг» — «обязательность» со стороны круга.

[svg]

Объекты

screen

Экран (Page,Screen,Страница) — максимальная область, используемая Gnuplot для отрисовки.

Содержит одну или несколько диаграмм.

plot

Диаграмма (Plot) содержит один график.

graph

График (Graph) имеет координатную систему, даже если на экране явным образом она не показана. График может содержать одну или несколько кривых.

curve

Кривая (Curve) изображает одну функцию или набор данных.

Note.svg Заметим, что к «кривой», интуитивно представляемой как «гладкий хитрозакрученный график», на самом деле относится и изображение «прямой линии», и дискретные столбцы какой-нибудь гистограммы.

axes

Координатная система (Оси, axes) может иметь до четырех именованных осей.

Точнее, следует различать случаи:

2D (двухмерный график)
имеются следующие оси:
x
проходит по нижней границе;
y
проходит по левой границе;
x2
по верхней границе;
y2
по правой границе;
3D (трехмерный график)
имеются оси «x», «y», «z».

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

Можно ли использовать оси «x2/y2» на трехмерных диаграммах?

title

[label="Title\nНазвание" URL="#title"];

Команды

Функции

Функции в gnuplot аналогичны соответствующим в математической библиотеке Unix, исключая то, что все они принимают целые, вещественные и комплексные аргументы, если не указано иное.

Для тех функций, которые принимают или возвращают углы, которые могут быть заданы в градусах или радианах (sin(x), cos(x), tan(x), asin(x), acos(x), atan(x), atan2(x) и arg(z)), единицы могут быть указаны командой angles, по умолчанию установлены радианы.

См. Категория:Функции (gnuplot)

ibeta

ibeta (gnuplot) ibeta(p,q,x) возвращает неполную (incomplete) бета-функцию действительной части ее аргументов. p, q > 0 и x в интервале [0:1]. Если аргументы комплексные, то мнимая часть игнорируется.

igamma

igamma (gnuplot) igamma(a,x) возвращает неполную гамма-функцию действительной части аргументов. a > 0 и x >= 0. Если аргументы комплексные, то мнимая часть игнорируется.

imag

imag (gnuplot) imag(x) возвращает мнимую часть аргумента как вещественное число.

invnorm

invnorm (gnuplot) invnorm(x) возвращает функцию, обратную функции нормального распределения от действительной части аргумента.

lgamma

lgamma (gnuplot) lgamma(x) возвращает натуральный логарифм гамма-функции действительной части аргумента. Если аргумент комплексный, мнимая часть игнорируется.

real

real (gnuplot) real(x) возвращает действительную часть аргумента.

Ссылки

Категория:Gnuplot


Статья реплицируется в Wiki4IntraNet.