Добавлен: 29.10.2018
Просмотров: 6932
Скачиваний: 24
Последний релиз Pbmplus был выпущен 10 декабря 1991 года. Посканзер больше
не развивал свой проект и в 1993 году на смену Pbmplus пришёл Netpbm. Пона-
чалу это было не более, чем переименованный релиз Pbmplus, но он развивался
вплоть до 1995, когда пакет вновь оказался заброшенным. В 1999 году развитие па-
кета Netpbm было подхвачено его нынешним меинтейнером, Брайэном Хендерсоном
(Bryan Henderson).
Название Netpbm пошло от разработчиков, сотрудничавших при помощи сети
Internet, что в то время было примечательно. (Аналогичные имена были даны опе-
рационной системе NetBSD и игре NetHack.)
Первый выпуск — 2000 (1988), последняя версия — 10.35.90 (26 сентября 2013).
Использует свой формат PAM для промежуточного хранения растра, понимает
множество входных и выходных растровых форматов и PS.
Представляет из себя большой набор утилит, несколько динамических библиотек
и скриптов на
shell
и
Perl
.
Пример
.2 (NetPBM: GIF 7−→ EPS). Для конвертации GIF-файла в EPS надо ис-
пользовать утилиты
giftopnm и pnmtops:
giftopnm file.gif | pnmtops > file.eps
Полный синтаксис:
giftopnm [–alphaout=alpha-filename,-] [-verbose] [-comments]
[-image=N,all] [GIFfile]
pnmtops [-scale=s] [-dpi=N[xN]] [-imagewidth=n] [-imageheight=n] [-width=N]
[-height=N] [-equalpixels] [-turn|-noturn] [-rle|-runlength] [-flate] [-ascii85]
[-nocenter] [-nosetpage] [-level=N] [-psfilter] [-noshowpage] [pnmfile]
7.2. ImageMagick
ImageMagick
— свободно распространяемая коллекция утилит для чтения, записи
и редактирования файлов как растровых, так и векторных форматов (более 200
форматов!), от ImageMagick Studio, разработчики — Джон Кристи (John Cristy)
и Глен Рэндерс-Пёрсон (Glenn Randers-Pehrson).
Первый выпуск — 1990, последняя версия — 7.0.7-24 (25 февраля 2018).
Для получения списка поддерживаемых форматов введите в терминале команду
convert -list format
ImageMagick
может использоваться с языками Perl, C, C++, Python, Ruby, PHP,
Node.js, Java, Pascal, Object-Pascal, в скриптах командной оболочки или самостоя-
тельно.
Предыдущий пример:
Пример
.3 (ImageMagick: GIF 7−→ EPS).
convert file.gif file.eps
Пример
.4 (Фрагмент пакетного файла для генерации файлов предпросмотра).
for %%f in (*.jpg) do convert -size 120x120 %%f
-resize 120x120 +profile "*" thumbnail/%%f
Полное описание всех возможностей редактора с большим количеством примеров
можно найти на официальном сайте:
40
8.
Деловая и научная графика
Деловая и научная графика присутствует во многих статистических, аналитиче-
ских системах, а также средах проектирования и разработки. Например, Deductor,
R/RStudio
, BPwin, CA ERwin Process Modeler (ранее ERwin), ER/Studio (Embarcadero),
Ramus
, BizAgi Process Modeler, IBM WebSphere, IBM Rational Data Architect, IBM Rational
Software Architect
, . . .
Существуют и отдельные графические инструменты, которые находят примене-
ние в различных областях.
• MS Visio
— проприетарный редактор диаграмм и блок-схем для Microsoft
Windows
. В стандартный набор программ MS Office входит только средство
для просмотра и печати диаграмм Microsoft Visio Viewer. Полнофункцио-
нальная версия Microsoft Visio Professional для создания и редактирования
монограмм и диаграмм в пакеты MS Office не входит и распространяется от-
дельно. VDX является хорошо задокументированным XML «DatadiagramML»
форматом. Начиная с версии Visio 2013, сохранение в формате VDX больше
не поддерживается в пользу новых VSDX и VSDM файловых форматов.
Формат DatadiagramML используется многими другими инструментами по
управлению бизнес-процессами, такими как Agilian, ARIS Express, Bonita Open
Solution
, ConceptDraw, OmniGraffle, IBM WebSphere. LibreOffice, начиная с версии
4.0 поддерживает просмотр всего спектра Visio файлов (начиная с Visio 1.0 и
заканчивая Visio 2013, включая VSDX, VSDM и VDX файловые форматы).
• Dia
— свободный кроссплатформенный редактор диаграмм, часть GNOME
Office
, но может быть установлен независимо. Он может быть использован
для создания различных видов диаграмм: блок-схем алгоритмов программ,
древовидных схем, статических структур UML, баз данных, диаграмм
сущность-связь, радиоэлектронных элементов, потоковых диаграмм, сетевых
диаграмм и других. Dia может расширяться новыми наборами объектов, ко-
торые описываются с помощью файлов в формате, основанном на XML, есть
возможность импорта/экспорта библиотек объектов MS Visio. Возможности:
— Поддержка диаграмм потоков, структурных диаграмм и т. д.
— Экспорт в Postscript.
— Загрузка и сохранение в формате XML.
— Возможность описания новых объектов.
— Установка свойств по умолчанию для добавляемых объектов.
— Изменение цвета шрифта и заливки блоков.
Надстройки:
— AutoDia — автоматическое создание UML-схем из программного кода.
— Dia2Code — автоматическое преобразование UML-схем в программный
код.
41
Dia
позволяет экспортировать и сохранять диаграммы в различные форма-
ты: EPS, SVG, DXF (Autocad’s Drawing Interchange format), CGM (Computer
Graphics Metafile), WMF , PNG, JPEG, VDX .
• QtiPlot
— свободное программное обеспечение для анализа и визуализации на-
учных данных. Версии для Windows и Mac OS X платные, демоверсии запреща-
ют сохранение проекта и ограничивают время работы 10 минутами. QtiPlot по
функциональности похожа на Origin и SigmaPlot, и используется для их замены
в институтах, для проведения научно-исследовательских работ и подготовке их
к публикации. QtiPlot может использоваться для создания 2D и 3D графиков
и содержит большое количество функций для анализа данных, таких как ап-
проксимация кривых и т. п. При построении 3D-графиков рендеринг может
производиться с использованием OpenGL (при помощи библиотеки Qwt3D).
Последняя версия 0.9.8.9 (2 ноября 2011).
• GNUplot
.
8.1. Редактор научной графики GNUplot
GNUplot — управляемая командами интерактивная программа состав-
ления графиков (в режиме командной строки).
GNUplot
написан Томасом Вильямсом (Thomas Williams) и Колином Келли
(Colin Kelley).
Эта программа распространяется свободно (“as is”), отличается компактностью
и мобильностью. Она работает на различных платформах: UNIX/Linux, MacOS,
Windows
и др., а созданные в ней макрофайлы (обычно с расширением
.plt)
независимы от платформы.
GNUplot
также используется в качестве системы вывода изображений в различ-
ных математических пакетах: GNU Octave, Maxima, Reduce и других.
Последняя версия 5.2.1 (октябрь 2017).
Синтаксис
Программа чувствительна к регистру, имена команд можно сокращать. В стро-
ке может быть любое количество команд, отделяемых ‘;’. Строки заключаются в
двойные или одинарные кавычки.
Запуск:
gnuplot
После этого можно писать команды.
Запуск в пакетном режиме:
gnuplot макрофайл
Кроме того, GNUplot можно использовать в конвейере (вместе с другими коман-
дами и программами).
Выход:
quit
или
exit
42
Помощь
help
или
?
— вывод содержания;
help команда
— вывод справки о команде;
help тема
— вывод справки по указанной теме.
В описаниях команд необязательные аргументы указываются в квадратных скоб-
ках (‘[. . . ]’).
Редактирование командной строки
GNUplot
поддерживает стиль редактирования EMACS, а в версиях для MS DOS
и WINDOWS — клавиши управления курсором. Клавиша Esc очищает командную
строку. GNUplot также поддерживает историю команд.
Графические устройства
GNUplot
поддерживает все существующие графические (внешние) устройства.
Посмотреть полный список доступных устройств можно с помощью команды
set terminal
.
set terminal устройство [опции ]
— установка в качестве выходного указан-
ное графическое устройство.
show terminal
— выводит установленное графическое устройство.
Макрофайлы
save [functions|variables|set] ’файл ’
— сохраняет в файле определённые
пользователем функции, переменные, настройки.
Имя файла пишется с произвольным расширением.
Пример
.5 (Сохранение файлов в GNUplot).
save ’work.gnu’
save functions ’func.dat’
save var ’var.dat’
save set ’options.dat’
load ’файл ’
— считывает файл.
cd ’директория ’
— изменяет текущую директорию.
pwd
— выводит текущую директорию.
Внутри файла возможно применение символов ‘
\’ — для продолжения строки
(ставится в конце строки) и ‘
#’ — для комментирования строки.
Построение графиков
Двумерный график:
plot [диапазон] {функция |
{’файл ’ [модификации]}} [axes оси ]
[title ’заголовок ’ | notitle]
[with стиль ], ...
Трёхмерный график:
43
splot [диапазон] {функция |
{’файл ’ [модификации]}} [axes оси ]
[title ’заголовок ’ | notitle]
[with стиль ], ...
Диапазон задаётся в виде интервала
[a:b]
, первый интервал относится к оси X,
второй — к оси Y .
Функция
записывается с использованием арифметических знаков и стандартных
функций, кроме того, можно использовать операторы языка C (для возведения в
степень используется оператор Фортрана ‘**’).
Функции могут быть параметрическими (t,u,v).
Пример
.6 (Функции в GNUplot).
plot sin(x)
f(x)=sin(x)
plot f(x)
plot sin(x),cos(x)
set param
plot sin(t),cos(t+pi/2*3)
Данные для графиков могут быть записаны в файл. Файл состоит из данных,
записанных в столбцы и разделённых пробелами. Данные делятся на блоки 2-мя пу-
стыми строками. Одна пустая строка обозначает разрыв (при использовании линии).
В файле данных также можно комментировать записи символом ‘#’.
Данные могут быть записаны в экспоненциальном формате, с использованием
символов ‘e’, ‘E’ ‘d’, ‘D’, ‘q’ или ‘Q’. Если записан только один столбец, эти данные
принимаются за y, а соответствующие значения x считаются целыми, начиная с 0.
Имя файла может отсутствовать (‘’), тогда берётся ранее считанный файл. Если
задать имя ‘-’, то данные можно вводить в командной строке, закончив ввод симво-
лом ‘e’.
В качестве модификаторов могут использоваться следующие параметры: index,
every
, thru, using, smooth.
Параметр оси используется, чтобы выбрать оси, для которых график должен
масштабироваться; этот параметр может принимать одно из четырёх возможных
значения:
x1y1
— естественный масштаб;
x2y2
— масштабирование по обоим осям;
x1y2
— масштабирование по оси Y;
x2y1
— масштабирование по оси X.
Опция title задаёт заголовок для каждого набора данных, который записывается
в легенде.
Параметр стиль задаёт стиль линии графика и может принимать одно из
следующих значений: lines, points, linespoints, impulses, dots, steps, fsteps, histeps,
errorbars
, xerrorbars, yerrorbars, xyerrorbars, boxes, boxerrorbars, boxxyerrorbars, financebars,
candlesticks
, vector.
В качестве модификации стиля можно изменить тип, стиль, толщину линии, тип
и размер точек.
44