gnuplot как использовать. Точка. Линия. График. Стиль.
Тем, кто ищет простую и популярную программу для рисования сложных графических фигур и графиков, судя по отзывам в интернете - может показаться, что именно таковой является мультисистемная программа gnuplot ... Действительно, например, чтобы нарисовать синусоиду - достаточно всего десять символов : plot sin(x) ... Именно, за этой внешней простотой - скрывается огромная научная и математическая сложность использования софта графопостроителя ... Здесь, даже круг или проста линия - представляют из себя математическую функцию ...
Как быть самым маленьким начинающим, мечтающим начать изучение сложной программы простого рисования - с обычных точек, линий, треугольников, кругов и квадратов, если в приведенных примерах - ни слова об этом не сказано ??? ... Кроме того, в приложении есть особые условия применения, не видимые на первый взгляд ... Как начинающий знакомство с этим интересным софтом - попробую рассказать о впечатлении от первого использования - не так, как об этом изложено в справке или на форумах ...
Невнятные служебные символы и команды. Общее введение.
# - знак начала комментария кода ...
* - в случае подстановки значения - число, если допустимо - будет рассчитано автоматически ... в остальных случаях - это знак умножения (поддерживаются все прочие стандартные математические и логические операторы расчётов и вычислений) ...
x - что-то вроде универсального числа ; подставная базовая переменная ... От этого, в примере синусоидальной функции - даже не требуется уточнять его значение ; рисование графика функции plot sin(x) воспроизводится в общем математическом виде ... Используя print - просмотрел все переменные, от a до z, и только x = 0.0 ...
t, u, v - ещё одни магические знаки из ряда волшебных символов подставления переменных ... применяются для установки предела диапазона координат рисования range : горизонтальных и вертикальных осей, а также полярного радиуса ...
e - признак окончания ввода данных ...
команда обрабатывается в одну строку ... перенос строк - не допускается ... если посмотреть на исходники демо файлов - там вообще : все команды идут в одну строчку, представляя программный код - крайне плохо читаемым для новичков ... Верхний и нижний регистр букв - различается, и может привести к ошибке ...
Аббревиатуры сокращения стилей.
lt - linetype, тип линии ...
lc - linecolor, цвет линии ...
lw - linewidth, ширина линии ...
ls - line style, пользовательский стиль, устанавливаемый командой set ... Отличие стиля линии от типа линии ... Стиль - это временный вид линии, сбрасывается по окончании работы скрипта ... Тип линии - это постоянный вид, предзаданный при загрузке графопостроителя ...
lp - linespoints, стиль линии с промежуточными точками ...
dt - dashtype, образец или шаблон штриха пунктирной линии ...
pt - pointtype, тип точки ...
ps - pointsize, размер точки ...
pi - pointinterval, интервал точки ... Обратите внимание, что в зависимости от контента pi может интерпретироваться, как физическая величина π (3.14), причем константа имеет написание именно строчными буквами, так как прописная Pi - не определена и даст ошибку ...
pn - pointnumber, номер или числовой размер точки (?) ...
wp - with points, строить график с использованием точек ... Вообще то, понятие point / точка в приложении гнуплот, похоже несёт - более глубокий смысл, нежели собственно dot / точка ... Пойнт - больше похоже на пункт, место, некую область, которая определяет нулевые координаты начальной точки, которую можно представить : и в виде треугольника, круга, квадрата или иной геометрической фигуры, которую можно ориентировать и в режиме 3D - вращать во всех плоскостях ...
wl - with lines, график будет построен с использованием линий ...
Список наиболее полезных команд на первое время.
reset - сбросить / обнулить все предыдущие изменения ...
clear - очистить окно графика ... На самом деле я не сильно понимаю механизм работы этой команды, так как иногда - она не очищает окно полностью, оставляя прошлые введенные линии ... Об этом же поведении - указано в справке ...
help help (или любая другая команда) - вывод справки ...
show - показать (set - установить) ... Например. узнать в каком терминале идет текущая работа (зависит от поддержки операционной системой и определяется настройками) : show terminal ... Для меня был ответ : terminal type is now qt, хотя на самом деле я работаю в windows (который - также поддерживается qt) ...
test - тестовое авто рисование для проверки и демонстрации возможностей графического софта ...
plot - рисование 2D ...
splot - рисование 3D ...
pause (применяется совместно со значением : (минус) -1 - пауза до нажатия любой клавиши ; любое положительное, например 15 - пауза 15 секунд ; 0 - нулевая задержка исполнения кода сценария) ...
print - печать, не как на принтер, а что-то вроде старейшей Бейсик команды, например print 1+2 - сразу даст ответ сложения = 3 , а не будет повторять ввод, как - эхо (echo) ...
Рисование простых фигур 2D.
На самом деле, все эти первичные знания - не дают никакого представления о том, как нарисовать обычные и самые распространенные - простейшие геометрические фигуры ... Есть ещё проблема и в том, что gnuplot - ориентирован на работу с заранее созданными файлами списка команд и данных, или - преобразованием онлайн потоковых данных из других программ ...
Чтобы ввести команды непосредственно из консоли, а мы рассматриваем руководство по использованию программы gnuplot версии 5.4 patchlevel 5 - нужно использовать встроенный механизм inline data and datablocks прямого ввода команд и данных ...
1) команда '-' говорит, что используется виртуальный файл ввода непосредственно из консоли (с клавиатуры) и окончание заполнения данных должно заканчиваться символом e ... Предлагаю воспользоваться именно этим вариантом для создания примеров здесь, на сайте techstop-ekb.ru ...
2) команда $TmpData << EOD 1 2 3 4 5 EOD - говорит, что нужно создать временный блок и перенаправить, в него - множественные данные, которые могут использоваться разными графиками, в пределах текущего сеанса / сессии работы ... EOD - это идентификатор начала и конца блока ... Переменная $TmpData может иметь любое $имя ...
Рисование точки.
# Запрашиваем, в каком терминале, по умолчанию - мы работаем (делать, это - не обязательно ; просто, чтобы привыкнуть к работе с этим софтом) ... Каждый ввод завершаем нажатием клавиши Enter ...
show terminal
# Запрашиваем границы области рисования, выделенные по умолчанию ... Ось Z режима 3D - пока не трогаем ...
show xrange
show yrange
# И узнаем, что авто значения * выделили область -10 ... +10 единиц в обоих направлениях ...
# Используем специальный виртуальный файл '-' прямого ввода данных с клавиатуры ...
plot '-'
# Появится запрос ввода значений x y : input data ('e' end) , где e означает завершение ввода данных ...
# Вводим произвольные координаты точки , через пробел , нажимаем Enter ...
3 4
# Вводим e - чтобы закончить и посмотреть, что - получилось ...
e
# Софтваре отругало нас, за то что не указаны диапазоны для x y осей ... И - подставило их автоматически ...
# Ура ! ... Мы нарисовали первую точку в гнуплот ...
Как нарисовать точку в gnuplot. Первая точка.
Эта точка - даже не точка, а простой крестик месторасположения указанных нами координат ... А, вот теперь, похоже - начинается самое интересное ... Объяснение свойств работы только одной точки - затронет принцип действия всего ПО gnuplot ...
Стиль точки, по умолчанию - соответствует стилю линии ... Однако, если указывать для точки тип стиля линии - будет че то - не то, так как у самой точки - есть собственные типы стилей ...
pt 1 : + - плюсик ...
pt 2 : x - крестик ...
pt 3 : * - звёздочка ...
pt 4 - квадрат / pt 5 - закрашенный ...
pt 6 - круг / pt 7 - закрашенный ...
pt 8 - треугольник / pt 9 - закрашенный ...
pt 10 - треугольник перевернутый / pt 11 - закрашенный ...
pt 12 - ромб / pt 13 - закрашенный ...
pt 14 пятиугольник, пентагон, перевернутый / pt 15 - закрашенный ...
Далее - типы повторяются ... Таким образом, стиль точки (или её фигурка) - повторяют цвет и размер линии, которой они нарисованы (по умолчанию, тип lt 1 фиолетовый) ... При этом, неокрашенные геометрические разновидности фигур точки - сами входят и модифицируют стиль самой линии ... Короче, одно - выходит из другого и входит в другое ))) ...
Первые восемь типов линий - соответствуют всем терминалам (некоторые терминалы могут отображать больше разнообразия вариантов типов) : ...
1 - цвет lc rgb темно-фиолетовый, ширина lw 2, тип pt 1 ...
2 - lc rgb морской зеленый, lw 2, pt 7 ...
3 - lc rgb голубой, lw 2, pt 6, интервал pi -1 ...
4 - lc rgb темно-красный, lw 2, pt 5, pi -1 ...
5 - lc rgb синий, lw 2, pt 8
...
6 - lc rgb темно-оранжевый, lw 2, pt 3
...
7 - lc rgb черный, lw 2, pt 11 ...
8 - lc rgb золотой жезл, lw 2 ...
Рекомендуется внести эти настройки в файл инициализации и авто цикл повторит настройки для типов с номером больше 8, если они не были переопределены самим пользователем софта ... Смотреть подробнее в справке, linestyle ...
Тест возможностей qt терминала gnuplot в Windows и обзор стилей.
А мы пока нарисуем ... Даже, рисованием это назвать - нельзя ... Поиграемся с кругом, квадратом и треугольником ... Тем более, что и выдумывать ничего не надо - всё уже придумано за нас ... Но, это - совершенно не значит, что нам непозволительно нарисовать что то - своё ... Просто этому - ещё предстоит научиться ... И, тем более - это ведь не рисовалка квадратов и кружков ))) ...
# Ввод с клавиатуры ... Задаём тип точки - круг ...
plot '-' pt 6
3 3
e
Вторая геометрическая фигура - точка и кружок - одновременно.
Пора идти дальше ... Добавляем / увеличиваем размер ...
# Ввод с клавиатуры ... Задаём тип точки - квадрат, и указываем размер ...
plot '-' pt 4 ps 10
3 3
e
Рисуем точку квадрат, увеличиваем размеры.
Дальше - больше ... Рисуем треугольник, увеличиваем размер и меняем цвет ...
# тип точки pt 9 закрашенный треугольник ...
# размер точки ps 15
# ширина линии lw 6 ... Хотя ... Скорее всего - это неважно, потому-что триангле всё равно - закрашен однотонно ...
# цвет линии lc rgb "green"
# Указанные настройки вводим с клавиатуры ...
plot '-' pt 9 ps 15 lw 6 lc rgb "green"
5 5
e
Как нарисовать большой зелёный треугольник. Ну вот, уже становится - красивее.
Как хранятся данные координат - в файле ? ... Пока, мы вводили - только строчные / однострочные координаты x y ... Что будет с координатами, если расположить их : строчка под строчкой - как в тексте книги ? ...
x y
x y
x y
Если смотреть сверху вниз, то - получились столбцы однотипных данных ... Gnuplot более ориентирован работать, не с одинокими одно строчками, а - с массивами строк, объединенных в столбцы ... Такие большие наборы данных - легче хранить в файлах ... При вызове файла с модификатором разбора столбцов и строк - для значений, обычно разделённых пробелом (если не используется другой разделитель данных) ... И, учитывая формат with lines - строить график как линии ...
plot "file.dat" using 1:2 with lines
1:2 - следует понимать, как : x - из первого столбца , y - из второго столбца, одной строки ... Первая строка, точка x y - начало линии ... Вторая строка, точка x y - конец линии (и может быть начало следующей непрерывной или ломанной линии из промежуточных точек) ...
Первые два (x y, для 2D) и первые три (x y z, для 3D) столбца - являются обязательными, остальные - вспомогательные переменные, например цвет, размер и т.д. ...
Если, в файле с большим количеством цифр, нужные столбцы 5 и 7 - так и нужно писать :
using 5:7 , где x - это пятый , а y - седьмой столбцы ...
Посмотрите, как незаметно сами для себя - мы научились рисовать линии ... Предлагаю закрепить успех ... Но, не из файла, а - как обычно, с клавиатуры ... И, обратите внимание : сокращение wl - не работает, только полностью ... Зато - работает with lp - линии с промежуточными точками ...
# Рисуем отрезок линии с координатами точек 2 3 - 6 8 ...
plot '-' with lines
2 3
6 8
e
Рисуем линию по двум точкам без указания диапазона отображения.
Авто увеличение гнуплот подогнало размеры координат по параметрам отрезка ... В некоторых случаях это может быть - очень неудобно, особенно если нужно сравнить экспонат с реальной сеткой координат ... Предлагаю ввести диапазон отображения и повторить построение линии ...
set xrange [0:10]
set yrange [0:10]
plot '-' with lines
2 3
6 8
e
Теперь линия нарисована в сетке реальных координат.
Ну а теперь - рисуем квадрат, в типе линии lt 8 золотой жезл и с увеличенной шириной lw 6 ... Когда вы устанете вручную вводить одни и те же команды - вы сами перейдёте к сохранению своего кода в файлы ... Сейчас, это пока - неактуально ...
# Хотел ввести свой стиль ls 1 , потому-что желал увеличить ширину стандартного типа линии lt 8 - до размера lw 6 ... Но это у меня - не получилось ... Тогда добавил указание - прямо в строку вызова графопостроителя - но это также - не сработало ... Может быть потому-что я не добавлял дефаулт стили в файлы инициализации (как рекомендовали выше) ??? ...
set style line 1 lt 8 lw 6
set xrange [0:10]
set yrange [0:10]
plot '-' with lines lt 8 lw 6
2 2
2 8
8 8
8 2
2 2
e
Упс ... Вместо золотого квадрата получился черный прямоугольник.
Углубление в теорию.
На этом интересная практическая часть - заканчивается, и начинается скучная и нудная - теоретическая ... Говорят, что GNUplot - не имеет никакого отношения ко GNU GPL Linux (просто - так совпало) ... И я понятия не имею, как эта программа попала в списки софта Windows ... Не знаю, как - вам, но мне кажется, что от неё за километр фонит линуксовщиной ... Несмотря на графическую оболочку ... Windows приложения, обычно - не так сложны, изнурительны, а также - более снисходительны и лояльно доброжелательны к потребителям ... Имхо ... Вот это, словосочетание из справки : "оконный менеджер" ... Такого понятия в Windows нет, потому-что весь Windows - сам из себя представляет сочетание различных окон ...
Терминалы - это драйверы для рисования, записи текста и формата вывода в файл ... Например, кроссплатформенный терминал wxt поддерживает большинство ОС ... Терминалы настраиваются в файле инициализации wgnuplot.ini ... Другие варианты терминалов, некоторые из которых - вы уже можете знать (или - догадываться) ... canvas ... cgm ... dumb ... dxf ... emf ... fig ... hpgl ... pcl5 ... png ... jpeg ... gif ... sixelgd ... epslatex ... pslatex and pstex ... postscript ... svg ... domterm ... tkcanvas ... pict2e ... pstricks ... texdraw ... mf ... mp ... context ... latex ... wxt ... epscairo ... cairolatex ... pdfcairo ... pngcairo ... lua ... tikz ... qt ...
Функции ... Аргументы математических функций в gnuplot могут быть целыми, действительными или сложными, если не указано иное ... Функции, которые принимают или возвращают углы (например, sin(x)) обрабатывают значения углов как радианы, но их можно изменить на градусы ... Более 50 математических библиотечных функций ... Специальные функции из libcerf (только при наличии) ... Строковые функции - более десятка ... До 20-ти функциональных функций ... Все их можно найти в справке, по запросу / поиску - function ... Самые известные из них - пройденные в школьной программе ... sin(x) ... cos(x) ... tan(x) ... log(x) ... Random number generator - генератор случайного числа rand(x) ...
Обзор команд gnuplot.
break - прерывает выражение в квадратных скобках итерации оператора do или while, продолжая выполнение с оператора, следующего за закрывающей скобкой ...
cd - изменяет рабочий каталог ... имя каталога должно быть заключено в кавычки .. пользователям Windows рекомендуется использовать одинарные кавычки, потому что обратная косая черта [ \ ] имеет особое значение внутри двойных кавычек и должна быть экранирована ...
call - идентична команде load за одним исключением : за именем загружаемого файла может следовать до девяти параметров ... набор строковых переменных ARG0, ARG1, ..., ARG9 и целочисленная переменная ARGC ... в ARG0 задается имя входного файла, в ARGC задается количество имеющихся параметров, а от ARG1 до ARG9 загружаются параметры, передаваемые в командной строке ... Числа с запятой могут потерять в точности ...
clear - стирает текущий экран или устройство вывода, как указано в set terminal и set output ... Это обычно генерирует перевод формы на печатных устройствах ... Для некоторых терминалов при очистке стирается только часть поверхности построения, определяемая параметром set size, поэтому для них ее можно использовать в сочетании с set multiplot для создания вставки ...
continue - пропускает выражение в квадратных скобках итерации оператора do или while, возобновляя в начале следующей итерации (если какие-либо остаются в состоянии цикла) ...
do - выполнить последовательность команд - несколько раз ... Команды должны быть заключены в фигурные скобки, а открывающая { должна находиться в той же строке, что и ключевое слово do ... Эту команду нельзя использовать с операторами if / else старого стиля (без квадратных скобок) ... Примеры спецификаторов итерации см. в разделе iteration ... См. также while, continue, break ...
evaluate - оценка выполняет команды, заданные в виде строки аргумента ... Символы новой строки - не допускаются ... Это особенно полезно для повторения похожих команд ... См. макросы подстановки для другого способа выполнения команд из строки ...
exit - выход ... выходное сообщение / текст ошибки и статус выхода ... Команды exit и quit, а также символ END-OF-FILE (обычно Ctrl-D) - завершают ввод ... Команда exit - немедленно и безоговорочно вызовет выход из gnuplot, даже если входной поток многократно вложен ... В этом случае любые открытые выходные файлы могут быть завершены некорректно ... возвращаемое значение, обычно - неинформативно ... позволяет вернуть конкретное значение - статус выхода ... Дополнительные сведения см. в справке по пакетной / интерактивной обработке ...
fit - подгоняет введенное пользователем действительное выражение к набору точек данных, используя нелинейный алгоритм Марквардта-Левенберга методом наименьших квадратов ... Может быть до 12 независимых переменных, всегда есть 1 зависимая переменная, и можно подобрать любое количество параметров ... Дополнительно можно ввести оценки ошибок для взвешивания точек данных ...
help - отображает встроенную справку ... помощь - тема, можно запросить помощь для подтемы, введя ее имя, расширив запрос помощи ... Если в качестве темы указан вопросительный знак ( ? ), список тем, доступных в настоящее время - распечатывается на экране ...
history - печатает или сохраняет предыдущие команды в списке истории или повторно выполняет предыдущую запись в списке ... Чтобы изменить поведение этой команды, см. set history ... Строки ввода с историей в качестве их первой команды - не сохраняются в истории команд ...
if ... Новый синтаксис if - else ... Старый синтаксис if - else if - else ... Старый однострочный синтаксис по-прежнему поддерживается, но его нельзя смешивать с новым синтаксисом с блочной структурой ...
for - итерация, организация обработки данных, с многократным / циклическим повторением однотипных операций, не приводящих к вызовам самих себя (в отличие от рекурсии) ... Команды plot, splot, set и unset могут дополнительно содержать итерацию for ... Это приводит к многократному выполнению базовой команды, каждый раз переоценивая любые выражения, использующие переменную управления итерацией ... Итерация произвольной последовательности команд может быть запрошена с помощью команды do ...
import - импорт связывает определяемое пользователем имя функции - с функцией, экспортируемой внешним общим объектом ... Это представляет собой механизм плагинов, который расширяет набор функций, доступных в gnuplot ... Смотрите плагины ...
load - загрузка выполняет каждую строку указанного входного файла, как если бы она была введена в интерактивном режиме ... Файлы, созданные с помощью команды сохранения, впоследствии - можно загрузить ... Любой текстовый файл, содержащий допустимые команды - может быть создан и затем выполнен с помощью команды загрузки ... Загружаемые файлы могут сами содержать команды загрузки или вызова ... Чтобы загрузить аргументы, см. call ... Имя входного файла должно быть заключено в кавычки ... Специальное имя файла "-" может использоваться для загрузки команд из стандартного ввода ... Для Windows - одинарные кавычки ... В некоторых системах, поддерживающих функцию popen (Unix), загрузочный файл можно прочитать из канала, начав имя файла с символа ( < ) ... Команда загрузки выполняется неявно - для любых имен файлов, переданных в качестве аргументов, по порядку ...
lower - смотреть raise ...
pause - пауза отображает любой текст, связанный с командой, а затем ожидает указанное количество времени или пока не будет нажата клавиша возврата каретки ... пауза особенно полезна в сочетании с загрузкой файлов ... время - может быть любой константой или выражением с плавающей запятой ... pause -1 будет ждать, пока не будет нажата клавиша возврата каретки ... ноль ( 0 ) - вообще не будет останавливаться, а положительное число - будет ждать указанное количество секунд ... Если текущий терминал поддерживает mouseing, тогда пауза мыши - завершится, либо щелчком мыши, либо нажатием Ctrl-C ... Для всех других терминалов, или если мышь - не активна, pause mouse эквивалентна pause -1 ... Возможно задать конечные условия : ... keypress ... button1 ... button2 ... button3 ... close и any ... Если пауза заканчивается нажатием клавиши, то значение ascii нажатой клавиши возвращается в MOUSE_KEY ... Сам символ возвращается как строка из одного символа в MOUSE_CHAR ... Горячие клавиши - отключаются, если нажатие клавиши - является одним из конечных условий ... Масштабирование отключено, если button3 - является одним из конечных условий ... Во всех случаях координаты мыши - возвращаются в переменные ... MOUSE_X ... MOUSE_Y ... MOUSE_X2 ... MOUSE_Y2 ...
plot - это основная команда для рисования графиков ... множество различных графических представлений для функций и данных ... plot используется для рисования 2D-функций и данных ... splot рисует 2D-проекции 3D-поверхностей и данных ... Каждый элемент графика состоит из определения, функции или источника данных вместе с необязательными свойствами или модификаторами ... Графическое представление каждого элемента графика определяется ключевым словом with ... Данные для построения графика - либо генерируются функцией, либо - считываются из файла или именованного блока данных, который был определен ранее ... Несколько источников данных - разделяют запятой ... Элемент графика, содержащий определение функции или переменной - не создает никакого видимого вывода ...
print - печать ... печатает значение одного или нескольких выражений ... Вывод - осуществляется на экран, если только он не был перенаправлен с помощью ранее установленной команды печати ... Выражение - может быть любым допустимым, включая числовые или строковые константы, функцию, возвращающую число или строку, массив или имя переменной ... Также можно распечатать блок данных ... Функции sprintf и gprintf можно использовать вместе с print - для дополнительной гибкости при форматировании вывода ...
printerr - аналогичен print, за исключением того, что вывод всегда отправляется на stderr, даже если предыдущая заданная команда печати остается в силе ...
pwd - выводит на экран имя рабочего каталога ... Обратите внимание : если вы хотите сохранить текущий каталог в строковой переменной, или использовать его в строковых выражениях - вы можете использовать переменную GPVAL_PWD ...
quit - команды exit и quit, а также символ END-OF-FILE - закроют gnuplot ... Каждая из этих команд очищает устройство вывода (как и clear) - перед выходом ...
raise - повысить окно графики ... lower - понизить ... Команды повышения и понижения работают только для некоторых типов терминалов, и могут также зависеть от вашего оконного менеджера и настроек дисплея ... Эти команды известны, как - ненадежные ...
refresh (обновить) - похожа на команду replot (перерисовать) - с двумя основными отличиями ... Refresh переформатирует и перерисовывает текущий график, используя - уже считанные данные ... Это означает, что вы можете использовать обновление для графиков со встроенными данными (псевдо-устройство '-' прямого ввода) и для графиков из файлов данных, содержимое которых является - изменчивым ... Вы не можете использовать команду обновления - для добавления новых данных к существующему графику ... Операции с мышью, в частности масштабирование и уменьшение масштаба, при необходимости - будут использовать refresh обновление, а не - replot повторную прорисовку ...
replot - команда без аргументов - повторяет последнюю команду plot или splot ... Это может быть полезно для просмотра графика с различными заданными параметрами или при создании одного и того же графика для нескольких устройств ... Аргументы, указанные после команды replot - будут добавлены к последнему графику или команде splot (с подразумеваемым разделителем ',') - до ее повторения ... replot принимает те же аргументы, что и команды plot и splot, за исключением того, что диапазоны - не могут быть указаны ... Таким образом, вы можете использовать replot для построения графика функции относительно второй оси, если предыдущая команда - была plot , но не - splot ... Прямой ввод '-' переделывать - не рекомендуется, так как это потребует повторного ввода данных ... В большинстве случаев, вместо этого - лучше использовать команду refresh обновления, которая перерисовывает график, используя ранее считанные данные ... В режиме мультиплота повторная диаграмма может воспроизводить только самый последний, а не полный набор - графика ... См. также show plot, чтобы показать всю текущую команду построения графика и возможность скопировать ее в историю ...
reread - УСТАРЕЛО ... Эта команда - устарела в пользу явной итерации ... Команда reread приводит к тому, что текущий командный файл, указанный в команде загрузки - сбрасывается до исходной точки - до того, как из него будут считаны дальнейшие команды ... По сути, это реализует бесконечный цикл команд, от начала командного файла до команды повторного чтения ... Команда reread не действует при интерактивном чтении (со стандартного ввода) ...
reset - сбросить ... reset заставляет все параметры, связанные с графиком, которые могут быть установлены с помощью команды set - возвращаться к значениям по умолчанию ... Эту команду можно использовать для восстановления настроек по умолчанию, после выполнения загруженного командного файла или для возврата к определенному состоянию после изменения множества настроек ... Сброс - не влияет на : ... set (term | output | loadpath | linetype | fit | encoding | decimalsign | locale | psdir | overflow | multiplot) ... Команды можно выполнить повторно, используя вариант команды reset session ... Сброс сеанса / сессии удаляет все пользовательские переменные и функции, восстанавливает настройки по умолчанию, а затем повторно запускает общесистемный файл инициализации gnuplotrc и любой частный файл настроек $HOME/.gnuplot ... См. инициализацию ... сброс ошибок очищает только переменные состояния ошибки GPVAL_ERRNO и GPVAL_ERRMSG ... reset bind - восстанавливает все привязки горячих клавиш к состоянию по умолчанию ...
save - сохранить в поток или файл ... Если параметр не указан, сохраняются функции, переменные, установленные параметры и последняя команда построения графика ( splot ) ... файлы записываются в текстовом формате и могут быть прочитаны командой load ... выбор терминала и имя выходного файла записываются в виде комментария, чтобы в других установках gnuplot на ПК - сохранить работоспособность и исключить риск непреднамеренной перезаписи файлов ... save terminal без маркера - для кратковременного сохранения настроек терминала ... для одного сеанса - можно использовать метод с помощью команд set term push и set term pop ... Имя файла должно быть заключено в кавычки ... Специальное имя файла "-" может использоваться для сохранения команд в стандартный вывод ... В системах, поддерживающих функцию popen (Unix), выходные данные сохранения - можно передать через внешнюю программу, начав имя файла с ( | ) ... Это обеспечивает согласованный интерфейс для работы через канал ...
set / show - установки и просмотр множества опций ... Параметры, измененные с помощью set , можно вернуть в состояние по умолчанию командой unset ... См. также команду сброса ... Команды set и unset могут дополнительно содержать пункт итерации plot for ...
shell - команда оболочки порождает интерактивную оболочку ... Чтобы вернуться в gnuplot - ввести : ... logout при использовании VMS ... exit или символ END-OF-FILE при использовании Unix ... exit при использовании MS-DOS или OS/2 ... Команда оболочки игнорирует все остальное в командной строке gnuplot ... Если нужно передать командную строку оболочке для немедленного выполнения - использовать системную функцию или ярлык ( ! ) ...
splot - команда для рисования 3D-графиков (ну, на самом деле, проекций на 2D-поверхность, но вы это знали) ... Это трехмерный эквивалент команды plot ... splot предоставляет только одну ось x, y и z ; нет эквивалента вторичным осям x2 и y2, предоставленным plot ... Команда splot работает с данными, сгенерированными функцией, прочитанными из файла данных или предварительно сохраненными в именованном блоке данных. Имена файлов данных обычно предоставляются в виде строки в кавычках. Функция может быть математическим выражением или тройкой математических выражений в параметрическом режиме ... Новая функция в версии 5.4 заключается в том, что splot может работать с воксельными данными ... В настоящее время воксельные сетки можно строить с использованием стилей точек, объектов точек или изоповерхностей ... На значения сетки вокселей также можно ссылаться в спецификаторах использования других стилей графика, например, для назначения цветов ... В качестве альтернативы поверхностям, нарисованным с использованием параметрического или функционального режима - можно использовать псевдофайл '++' для создания выборок на сетке в плоскости xy ... См. также show plot, set view map и sample ...
stats (Statistical Summary) - статистика (Статистическая сводка) ... Эта команда подготавливает статистическую сводку данных в одном или двух столбцах файла ... Спецификатор using интерпретируется так же, как и для команд построения ... Подробную информацию о директивах index , every и using см. в разделе plot ... Перед анализом, точки данных - фильтруются, как по xrange, так и по yrange ... Сводка по умолчанию распечатывается на экране ... Вывод можно перенаправить в файл с помощью предварительного использования набора команд print или полностью подавить с помощью параметра nooutput ...
system - система ... выполняет системную команду, вызывая оболочку операционной системы по умолчанию ... При вызове как функции - возвращает поток символов из stdout подпроцесса в виде строки ... Одна завершающая новая строка удаляется из результирующей строки, если она присутствует ... См. также обратные кавычки ... Статус выхода подпроцесса сообщается в переменных GPVAL_SYSTEM_ERRNO и GPVAL_SYSTEM_ERRMSG ... Обратите внимание, что если командная строка вызывает более одной программы, подпроцесс может вернуть - Успех, даже если одна из программ выдала ошибку ... Системную команду можно использовать для импорта внешних функций, однако это приведет к созданию отдельного подпроцесса при каждом вызове функции. Для функций, которые будут вызываться много раз, было бы лучше импортировать непосредственно вызываемую подпрограмму из общей библиотеки ... См. import и plugin.dem ...
test - тест, графически тестирует или представляет возможности терминала и палитры ... test terminal - тестовый терминал создает отображение стилей линий и точек и других полезных вещей, поддерживаемых терминалом ... test palette - отображает профили R(z),G(z),B(z), где 0<=z<=1 ... Это компоненты RGB текущей цветовой палитры ... Также отображает кажущуюся чистую интенсивность, рассчитанную с использованием коэффициентов NTSC для преобразования RGB в оттенки серого ... Значения профиля также загружаются в блок данных с именем $PALETTE ...
Тест палитры компьютера и терминала qt Win версии софта gnuplot.
toggle - переключатель, имеет тот же эффект, что и щелчок левой кнопкой мыши по клавише для графика, отображаемого в данный момент интерактивным терминалом (qt, wxt, x11) ... Если график отображается, он будет - скрыт ... Если он в настоящее время скрыт, он - будет показан ... Переключить все действия на всех активных графиках - эквивалентно горячей клавише ( i ) ... Для переключения ( название ) - требуется точное совпадение с названием ... Переключатель ( ti* ) - действует на первый график, название которого - совпадает с символами до финальной ( * ) ... Если текущий терминал не интерактивен, команда переключения - не действует ... Примечание : клавиша для графика , это - строка описания и назначения в верхнем правом углу - этот текст - кликабельный ...
undefine - не определено ... Очистите одну или несколько ранее определенных пользовательских переменных ... Это полезно для сброса состояния скрипта, содержащего тест инициализации ... Имя переменной может содержать подстановочный знак * в качестве последнего символа ... Если подстановочный знак найден, все переменные, имена которых начинаются с префикса, предшествующего подстановочному знаку, будут удалены ... Это полезно для удаления нескольких переменных с общим префиксом ... Обратите внимание, что подстановочный знак разрешен только в конце имени переменной ... Указание подстановочного знака в качестве единственного аргумента для отмены определения - не имеет никакого эффекта ...
unset - значение переменной сброшено, отключено ... Параметры, установленные с помощью команды set, могут быть возвращены в состояние по умолчанию ... unset может содержать необязательный пункт итерации ...
update - обновить ... Эта команда УСТАРЕЛА ... Вместо этого, использовать - save fit ...
vclear - сбрасывает значение всех вокселей в существующей сетке - до нуля ... Если имя сетки не задано - очищает текущую активную сетку ...
vfill - заполнить, действует аналогично команде построения графика, за исключением того, что вместо создания графика она изменяет воксели в текущей активной воксельной сетке ... Для каждой точки, считанной из входного файла, воксел, содержащий эту точку, а также все другие воксели в сфере заданного радиуса с центром вокруг (x, y, z) увеличиваются следующим образом : ... Пользовательская переменная VoxelDistance устанавливается на расстояние от (x, y, z) - до координат сетки этого вокселя (vx, vy, vz) ... Оценивается выражение, указанное в пятом спецификаторе using ... Это выражение может использовать новое значение VoxelDistance ... Обратите внимание, что vfill всегда увеличивает существующие значения в текущей воксельной сетке ... Чтобы сбросить их до нуля, используйте vclear ...
While - пока ... Повторно выполнять блок команд до тех пор, пока оценивается как - ненулевое значение ... Эту команду нельзя смешивать с операторами if / else старого стиля (без квадратных скобок) ...
Список литературы и источников в сети.
...
...
...
...
...
...
... voxel - воксель, элемент объёмного изображения, содержащий значение элемента растра в трёхмерном пространстве ... Воксели являются аналогами двумерных пикселей для трёхмерного пространства ... В компьютерной графике воксели используются как альтернатива полигонам ... Иногда ошибочно считают воксели заменой для физических пикселей ... На самом деле, под вокселом обычно понимается виртуальный элемент, соответствующий набору из шести прямоугольных полигонов ... Всё в виртуальном мире : пиксели, полигоны и воксели - должно быть спроецировано на пиксели физического экрана ... Виртуальными пикселями рисуют плоские 2D модели объектов (спрайты) в 3D мире ... Полигонами или 2D плоскостями - обволакивают пустое 3D пространство ... Вокселами выкладывают объёмные модели объектов, которые имеют внутренности ... То есть в отличие от полигонов и пикселей, воксели - это истинный 3D кирпичик, а не 2D плоскость, которая окружает пустое 3D пространство ... Сейчас при 3D моделировании объекты часто создают в основном только двумя способами : ... либо - с помощью плоских полигонов, полая модель без внутреннего наполнения ... либо - с помощью объёмных кубиков / вокселей, которые полностью заполняют внутренности 3D модели, где каждый такой кубик несёт в себе информацию о том, чем он является ...
... Отличие параметрического изображения от обычного состоит в том, что в нем хранится информация не только о расположении и характеристиках геометрических объектов, но и о взаимосвязях между объектами и наложенных на них ограничениях ... Под взаимосвязью объектов подразумевается зависимость между параметрами нескольких объектов ... При редактировании одного из взаимосвязанных параметров изменяются другие ... Редактирование параметров одного объекта, не связанных с параметрами других объектов - не влияет ни на какие параметры ... При удалении одного или нескольких объектов взаимосвязь исчезает ... При редактировании параметризованных и ассоциативных объектов перестроение изображения происходит таким образом, что соблюдаются все наложенные на объекты ограничения и сохраняются связи между объектами... Параметрические изображения могут использоваться как самостоятельно (например, чертеж, содержащий параметрические виды детали), так и для вставки в другие документы (чертежи или фрагменты) ... Параметрическое изображение, предназначенное для последующей вставки, обязательно должно храниться во фрагменте и иметь внешние переменные ...
Раздел computer : список всех страниц ...