Так как gnuplot был портирован на различные операционные системы, его использование слабо зависит от платформы. В данном случае описывается введение в gnuplot для платформы UNIX с запущенной графической системой X. В общем и целом описываемые ниже приемы работают везде, так что это руководство будет полезно и пользователям других операционных систем.
Для начала введите в терминале gnuplot. Программа показывает информацию о себе, после этого появляется приглашение командной строки "gnuplot> ". Теперь можно вводить команды для построения графиков.
user@user-laptop:~$ gnuplot G N U P L O T Version 4.2 patchlevel 5 last modified Mar 2009 System: Linux 2.6.31-17-generic Copyright (C) 1986 - 1993, 1998, 2004, 2007 - 2009 Thomas Williams, Colin Kelley and many others Type `help` to access the on-line reference manual. The gnuplot FAQ is available from http://www.gnuplot.info/faq/ Send bug reports and suggestions to <http://sourceforge.net/projects/gnuplot> Terminal type set to 'wxt' gnuplot> |
Команды для выхода, чтения из файла и сохранения параметров сессии в файл
Для выхода из программы используются команды exit или quit. Если вы выйдете из gnuplot с помощью команды quit, все настройки текущей сессии будут потеряны. Для сохранения настроек используется команда save с указанием имени файла, в котором будут сохранены настройки и функции, которые были определены. Имя файла указывается в одинарных или двойных кавычках. Имя файла указывается произвольное, но если такой файл уже существует в текущей директории, gnuplot перезапишет внутренние параметры без запроса подтверждения.
gnuplot> save "savefile.plt" |
Сохраненный файл является обычным текстовым файлом. Вы можете редактировать его содержимое с помощью любого текстового редактора. Чтобы снова начертить график из сохраненного файла, используйте команду load "savefile.plt", или запустите gnuplot с именем файла в качестве параметра командной строки.
Из gnuplot:
gnuplot> load "savefile.plt" |
Из командной оболочки системы:
% gnuplot savefile.plt |
Между этими двумя методами есть определенная разница: при загрузке файла из gnuplot после выполнения команды вы возвращаетесь в командную строку gnuplot и работаете с программой в интерактивном режиме. Если вы используете имя файла как опцию командной строки (второй случай), после чтения файла gnuplot завершается и вы возвращаетесь в командную оболочку системы. Это пакетный режим.
Команды для построения графиков
В gnuplot имеются две базовые команды для построения графиков - plot и splot. Первая используется для построения двумерных графиков, вторая - для трехмерных. Gnuplot строит график на основе функции или числовых данных, сохраненных в файле. Для построения графика функции используйте команду plot/splot с интервалом для оси X (или осей X и Y для трехмерного графика) и функцией. Вы можете не задавать интервалы для осей. Ниже приведен пример построения графика функции y=sin(x), который можно увидеть во многих руководствах по gnuplot.
gnuplot> plot sin(x) |
В данном случае построен двумерный график. Фрейм нарисован толстой линией, которая называется "граница (border)". Деления шкалы осей X и Y называются "главные деления (major tics)", числовые подписи расположены под делениями шкалы. Интервалы между главными делениями могут быть разделены дополнительными делениями. Вы можете задать имена осей X и Y. Название оси X -- "xlabel" -- отображается ниже оси, в то время как расположение "ylabel" зависит от вашего терминала. Если терминал поддерживает поворот текста, то название оси будет отображаться слева от оси и будет повернуто на 90 градусов, в противном случае оно будет отображаться над осью. Если интервалы для осей не заданы, gnuplot определяет соответствующие значения автоматически. В приведенном выше примере интервал для оси Х от -10 до +10 взят по умолчанию, а интервал для оси Y выбран автоматически. Зададим интервал по оси X от 0 до +5, [0:5].
gnuplot> plot [0:5] sin(x) |
Команды для изменения переменных и параметров
Существует определенное количество параметров, определяющих внешний вид графика. Их можно менять с помощью команды set. Подробно прочитать о ней можно в онлайновой справке.
gnuplot> help set The `set` command can be used to set _lots_ of options. No screen is drawn, however, until a `plot`, `splot`, or `replot` command is given. The `show` command shows their settings; `show all` shows all the settings. Options changed using `set` can be returned to the default state by giving the corresponding `unset` command. See also the `reset` command, which returns all settable parameters to default values. If a variable contains time/date data, `show` will display it according to the format currently defined by `set timefmt`, even if that was not in effect when the variable was initially defined. Subtopics available for set: angles arrow autoscale bars bmargin border boxwidth cbdata cbdtics cblabel cbmtics cbrange cbtics clabel clip cntrparam colorbox contour datafile date_specifiers decimalsign dgrid3d dummy encoding fit fontpath format grid hidden3d historysize isosamples key Press return for more: |
Ниже приведены несколько примеров изменения параметров графика. Сначала вставляются подписи осей. Текст должен быть заключен в одинарные или двойные кавычки. Далее задаются интервалы для осей X и Y.
gnuplot> set xlabel "X-AXIS" gnuplot> set ylabel "Y-AXIS" gnuplot> set xrange [0:5] gnuplot> set yrange [-2:2] gnuplot> plot sin(x) |
Если метод вывода не задан, график выводится на экран. С помощью команды set terminal можно задать вывод графика на принтер, в файл postscript и т.д. Gnuplot создает различные графики с помощью различных драйверов, поэтому он не зависит от платформы (хотя качество графика еще зависит от способа вывода). Методы вывода, которые может использовать gnuplot, могут быть просмотрены с помощью команды set terminal.
gnuplot> set terminal Available terminal types: unknown Unknown terminal type - not a plotting device table Dump ASCII table of X Y [Z] values to output linux Linux PC with (s)vgalib .... tpic TPIC -- LaTeX picture environment with tpic \specials pstricks LaTeX picture environment with PSTricks macros texdraw LaTeX texdraw environment mf Metafont plotting standard gnuplot> set terminal postscript Terminal type set to 'postscript' Options are 'landscape noenhanced monochrome dashed defaultplex "Helvetica" 14' |
Вывод в файл postscript задается с помощью команды set terminal postscript. Если направление вывода не задано, созданные данные postscript выводятся на экран. Команда set output меняет направление вывода.
gnuplot> set output "plot.ps" gnuplot> plot sin(x) |
Использование команд оболочки
Вы можете временно прервать интерактивную сессию gnuplot. Для использования команд оболочки используйте команду shell. Для возврата в gnuplot используется команда exit. Одна команда оболочки может быть исполнена с помощью символа ! перед командой, например !ls -a.
Gnuplot поддерживает команды pwd и cd, с помощью которых можно просматривать или менять рабочую директорию. Рабочей считается директория, к которой обращается gnuplot. Для смены директории введите cd "../other/dir". Кавычки обязательны.
Команды для подстановки, объявления функций, вычислений и т.д.
Вы можете использовать gnuplot как простой калькулятор. Чтобы подставить численное значение вместо переменной, просто введите "variable=value" в командной строке gnuplot. Чтобы просмотреть значение переменной, используйте команду print.
gnuplot> a=10 gnuplot> print a 10 |
Подстановка "Variable=expression" присваивает рассчитанное значение переменной.
gnuplot> a=1+2*sqrt(3) gnuplot> print log(a) 1.49606798806764 |
Объявленная переменная может использоваться в команде plot. Gnuplot поддерживает константу "pi". Построим график функции a*sin(x) от -2pi до +2pi, где a=0.5:
gnuplot> set xrange [-2*pi:2*pi] gnuplot> a=0.5 gnuplot> plot a*sin(x) |
Вы также можете определить собственную функцию, например:
gnuplot> f(x)=sin(x)*cos(x) |
Можно также использовать пользовательские переменные в таких функциях:
gnuplot> f(x)=a*sin(x)*cos(x) |
Перевод. Оригинал здесь
Комментариев нет:
Отправить комментарий