LINUX.ORG.RU

gnuplot 4.0


0

0

Новая версия популярной программы для построения графиков.

Основные изменения:

Измененние синтаксиса set no...' на 'unset ...';

Новый стиль построения 3-хмерных графиков 'pm3d';

Добавлена поддержка новых кодировок, в том числе и 'koi8-r';

Длина штриха в драйвере PostScript может быть изменена;

улучшенное форматирование текста может использоваться на некоторых терминалах, отличных от PostScript.

>>> Подробности

★★

Проверено: maxcom

Не прошло и трёх лет. Давно бы так, а то задолбался уже сырцы каждый раз выкачивать. 3.8i...3.8g.

kcp

anonymous
()
Ответ на: комментарий от Evgueni

Почему так слабо?

Ну почему же только двумерных. Трехмерные тоже очень даже ничего.

Сейчас скомпилял, посмотрел демо pm3d. Просто фантастика, все о чем мечтал добавили!!! :-)

Кстати, очень удобно стало мышой вращать и масштабировать трехмерные поверхности (прямо как в Maple 8). Приятно, что проект развивается.

Кстати, по моему для обработки массивов счетной информации ничего лучше не видел. Говорят IDL тоже неплох (скриптовый язык Interactive Data Language), но он платный, причем нехило!

С помощью gnuplot-а (даже старого) посредством генерения картинок и потом обработкой mplayer-ом делаем кино про эволюцию счетной модели.

Молодцы ребята! :-D

Crazy_Doctor
()
Ответ на: Почему так слабо? от Crazy_Doctor

А что значит массивы счётной информации?

Мне лично в gnuplot пока не хватает нормальной работы с гистограмами, записи результатов в файл, ntuplов и человеческой подгонки. Может быть кто-нибудь догадается cernlib прикрутить?

Evgueni ★★★★★
()
Ответ на: Почему так слабо? от Crazy_Doctor

Мне в нём теперь не хватает только построения векторных полей...

2Crazy_Doctor: куда писать, чтоб про кино поспрошать? потому как тоже надо бывает...

anonymous
()
Ответ на: Почему так слабо? от Crazy_Doctor

>Кстати, по моему для обработки массивов счетной информации ничего лучше не видел.

Есть проприетарный TecPlot за весьма кучерявые денюжки

http://www.amtec.com

У нас он что то типа промышленного стандарта хотя и gnuplot используем тоже довольно широко а вот OpenDX как то не прижился (слабоват оказался в коленках с нашими объемами данных работать)

sS ★★★★★
()
Ответ на: комментарий от anonymous

>Мне в нём теперь не хватает только построения векторных полей...

В смысле ?

set data style vector не катит ?

sS ★★★★★
()

Скажите, а как все таки в подписяя к осям индексы прикрутить? Вывожу в eps и чтобы все готово было. Кто знает?

anonymous
()
Ответ на: комментарий от anonymous

с Ориджина надо пересаживаться на ROOT или PAW, а не на гнуплот

qleap
()
Ответ на: комментарий от anonymous

>Скажите, а как все таки в подписяя к осям индексы прикрутить? Вывожу в eps и чтобы все готово было. Кто знает?

что есть "индексы" ? Если имеется ввиду subscript то соответственно

set terminal postscript enhanced # old enhpost

после чего работают конструкции типа a_i, a^2

sS ★★★★★
()

От фаната gnuplot

То есть как нет векторов? Есть. Читайте документацию. То есть как нет записи в файл. Это вы о чем вообще???

atoku ★★★
()
Ответ на: От фаната gnuplot от atoku

Мои извинения по векторам. Сильно протормозил. Возможно слегка извиняет меня то, что до сих пор юзал версию 3.6. Там я их не припоминаю (хотя также могу ошибаться).

Теперь заявление: gnuplot -- лучший аппарат для научной графики всех времён и народов. Особливо в соотношении функциональность/объём бинарного кода. Своего рода vim ;)

anonymous
()
Ответ на: комментарий от vitus

> А ROOT, значить, своего рода Emacs?

Эээ, я бы не сравнивал. Emacs так не падает.

Evgueni ★★★★★
()
Ответ на: комментарий от Evgueni

Немного про запись в файл.

Не совсем понимаю про отсутствие записи в файл. Gnuplot может сохранять в куче разных форматов. Мне нужны пока были только следующие: часто EPS или PS, иногда PNG, редко JPEG. Если это подходит - могу посоветовать.

Насчет гистограм - насколько я помню там что-то такое было. Пока нужно не было, поэтому ничего дельного посоветовать не могу.

Кстати, вот что у Gnuplot-а действительно на низком (пока) уровне, так это документация. Сильно не хватает tutorial-а.

В качестве справки лучше всего подходят демки. Если устанавливали из пакета, то они где-то в районе (например) /usr/share/doc/packages/gnuplot лежат. Там же лежит файл про то, как рисовать всевозможные хитрые символы в подписях к осям, титулах и т.п. Называется ps_symbols.ps. Если компилировали из исходников, то в корне есть директория docs, там лежит все скопом.

Честно говоря GUI-пакетами не пользовался, т.к. привык к Gnuplot довольно быстро, а если к commandline style привык - то все, пиши пропало! :-)

Если интересно, то можно на kao собака pochta точка ru написать, там нормальными мылами обменяемся.

Crazy_Doctor
()
Ответ на: комментарий от anonymous

Про кино и массивы счетной информации.

Тут все более-менее примитивно было.

Есть программа, моделирует динамику поверхности жидкости. Надо помотреть на спектры и форму поверхности в динамике. Периодически дампит нужные массивы в бинарном виде (так меньше места занимают) с меткой модельного времени на диск.

Как делали: 1. Написали программу, которая из бинарных дампов делает массив. Это более-менее универсально, т.к. таким образом можно делать вывод в нужном формате и смотреть все, что угодно: спектры, градиеты на всей поверхности и т.п. 2. Этой программой генерим фалы данных для Gnuplot-a. 3. Проходимся Gnuploto-м и генерим картинки. Если надо с хитрыми символами, то есть железобетонный метод: делаем EPS в нужном виде, потом с помощью утилиты convert из пакета ImageMagic делаем желаемый формат. 4а. С помощью программы mencoder, компаньона mplayer-а (www.mplayerhq.hu), делаем MotionJPEG. Все, дальше с помощью тех же пакетов можем делать хоть DiVX, хоть MPEG2 для DVD. 4б. С помощью (если не ошибаюсь) convert-a делаем AnimatedGIF - это только если мало кадров надо. Иначе размер будет огромным.

Естественно, все это сравнительно просто скриптуется, т.к. все утилиты управляются в том числе и из командной строки.

Вот собственно и вся процедура.

Если интересно, то можно на kao собака pochta точка ru написать, там нормальными мылами обменяемся.

Crazy_Doctor
()
Ответ на: комментарий от russman

Многоколоночность.

Да, есть в plot такая штука using. Она и обрабатывает колонки. Например: plot "multicolumn.data" u 1:3 выведет третью колонку в зависимости от второй.

Crazy_Doctor
()
Ответ на: Многоколоночность. от Crazy_Doctor

Кстати, о визуализации. Бывает очень удобно скриптом сгенерировать модель для POV-Ray и отрендерить. Это если нужна действительно красивая картинка (для презентации), особенно если надо поверхности трехмерные рисовать или молекулярную динамику. Неплохо gnuplot дополняет.

anonymous
()
Ответ на: комментарий от Evgueni

2Evgueni (*) (19.04.2004 16:56:09)

> Может быть кто-нибудь догадается cernlib прикрутить?

Зачем, если есть PAW (BTW, редкостная кака (IMHO))?

IMHO у Гнуплота идея противоположная - вам дают некий движок, а исходники для плотов (включая командные файлы) вы должны генерить из своих программ автоматически. Хотя, наверное, это - _моя_ идея, судя по негибкости гнуплотового языка...

Короче, НЕ шедевр - но я его юзаю, поскольку остальное нравится еще меньше (ROOT глюкав, PAW (Mathematica, Maple, Matad, etc.) -- непомерное соотношение сложность/возможности, а больше я не знаю...

Die-Hard ★★★★★
()
Ответ на: Про кино и массивы счетной информации. от Crazy_Doctor

>1. Написали программу, которая из бинарных дампов делает массив

а зачем ? Почему сразу не кормить гнуплоту бинарники ?

splot '<file_name>' binary ...bla-bla-bla

Сама конвертация из ascii кушает лишнее время а при больших массивах данных это весьма ощутимо по времени

Да и обработка данных gnuplot-ом хороша на небольших массивах данных а гигабайты лучше таки обсчитать в собственной программе

sS ★★★★★
()
Ответ на: комментарий от sS

Зачем нужна своя программа обработки бинарей.

Дело в том, что сгенерированный таким образом файл становится кроссплатформенным. Т.е. считать я могу на HP-UX, а картинки рисовать на x86. Хотя главная причина в том, что чаще всего надо обработать два массива сразу и построить график третьей величины от них зависящей.

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

А вот собственно жизнь. Пользуюсь классной библиотекой быстрого Фурье FFTW (fftw.org). Счет внутри программы преимущественно в спектральных переменных идет. Для экономии времени и места если работаем со спектрами действительных функций, то, пользуясь эрмитовостью спектра, храним результаты в половине гармоник. Причем упаковка часто бывает хитрая. Например для одномерных массивов там сначала идут все действительные части, потом все мнимые. Причем мнимые, насколько я помню, идут с конца массива к его середине. Ребята говорят, что таким образом гораздо удобнее считать.

Так что это просто более универсальный (идеологически) способ. И ничего более.

Crazy_Doctor
()
Ответ на: комментарий от Die-Hard

>Зачем, если есть PAW (BTW, редкостная кака (IMHO))?

Я бы так не говорил. Лучшей документации я пока не видел. А по стабильности она все системы подобного класса уделает - все баги документированы, а теперь ещё и под GPL. Там очень много правильного кода. Стабильная подгонка и очень удобный инерактивный режим.

Evgueni ★★★★★
()
Ответ на: Немного про запись в файл. от Crazy_Doctor

Имеется в виду не шрафическое представление, а саму гистограмму. Чтобы иметь возможность работать с ней. Это не просто набор данных, это данные + ошибки + лимиты + информация о подгоняющей функции - то есть это целая структура. Посмотрите на root или paw. Если нужны картинки, то можно и gnuplotом обойтись, но если данные необходимо обрабатывать, то gnuplotа явно не хватает.

Evgueni ★★★★★
()
Ответ на: комментарий от sS

>>Т.е. считать я могу на HP-UX, а картинки рисовать на x86

>Тады ой ;)

Это тоже можно обойти. В paw специальная процедура есть для перегона бинарных данных в специальный межплатформенный формат (объём увеличивался в два раза) и обратно.

С уважением Евгений

Evgueni ★★★★★
()
Ответ на: комментарий от yvv

>Привернули же к gnuplot'у octave и ddd, его много програм используют. Как я понял это не так сложно.

Тут систуация немного обратная (pV3 это параллельная версия Visual3 см. http://raphael.mit.edu/pv3/pv3.html ) речь идет о распаралеливании обработки внутри самого гнуплота. Смысл в том чтобы можно было гонять гнуплот в кластере - потому как уже 100Мб файлы данных обрабатываются довольно медленно ...

sS ★★★★★
()
Ответ на: комментарий от sS

>>Тут систуация немного обратная (pV3 это параллельная версия Visual3 см. http://raphael.mit.edu/pv3/pv3.html ) речь идет о распаралеливании обработки внутри самого гнуплота. Смысл в том чтобы можно было гонять гнуплот в кластере - потому как уже 100Мб файлы данных обрабатываются довольно медленно ...

Ну gnuplot -- это всё-таки не для обработки данных. Обработка данных может быть очень разной, и для этого дела есть куча математического софта. А gnuplot'ом чисто графики строят из уже обработанных данных.

Вот например octave -- математический пакет в том числе и для обработки данных, он использует gnuplot как рисовалку.

yvv ★★☆
()
Ответ на: XviD 1.0.0 от BigSerpent

Если говорить про построение двухмерных графиков свободными программами с GUI, то здесь достоин упоминания только grace (http://plasma-gate.weizmann.ac.il/Grace/ ), всё остальное - недоделанные поделки.

pandrey ★★
() автор топика
Ответ на: комментарий от yvv

>Ну gnuplot -- это всё-таки не для обработки данных. Обработка данных может быть очень разной, и для этого дела есть куча математического софта. А gnuplot'ом чисто графики строят из уже обработанных данных.

В данном случае под обработкой понимается именно обработка данных для построения графика - ничего более... например построение изолиний или поверхностей тоже требует вренени и немалого

sS ★★★★★
()
Ответ на: комментарий от pandrey

Про "поделки".

Откуда такая категоричность? Если он вам нравится (многим нравится, т.к. интерфейс очень простой), то не значит, что для всех задач он хорош. Более того, знающие люди даже скажут вам, что для многих конкретных задач он хуже чем их любимый XXX (нужное вставить).

А вообще, зачем GUI рисовалке картинок? Вопрос чисто риторический, на мой взгляд.

Crazy_Doctor
()
Ответ на: Про "поделки". от Crazy_Doctor

>А вообще, зачем GUI рисовалке картинок? Вопрос чисто риторический, на мой взгляд.

Иногда даже очень удобно поковырятся в данных в интерактиве

см упоминавшийся мною TecPlot

BTW: Когда я прикрутил к одной из моих софтин аналогичную функцию, заказчики просто кыпятком пысали ;)

sS ★★★★★
()
Ответ на: комментарий от Evgueni

Evgueni (Score: 103 MaxScore: 103) (*) (20.04.2004 21:35:00):

>> Зачем, если есть PAW (BTW, редкостная кака (IMHO))?

> Я бы так не говорил. ...

Чтобы сделать простейший рисунок, надо прочитать очень толстую книжку. Конечно, система помощнее Гнуплота, но все равно ограничена. К тому же заточена под Фортран.

Почти все то, что можно сделать с помощью PAW, можно сделать и Гнуплотом.

Лично мне в Гнуплоте не хватает только возможностей встроенного языка (универсальности по части параметров выводимой графики) + несколько глюкав.

Впрочем, все это, разумеется, чисто субъективно.

Die-Hard ★★★★★
()
Ответ на: комментарий от Die-Hard

>Чтобы сделать простейший рисунок, надо прочитать очень толстую книжку

Есть простеший туториал, где часто используемые приёмы показываются на примерах. Есть подробное описание-справочник. Есть и твёрдые копии (натаскали из CERN - посылали по почте) и электронные.

>К тому же заточена под Фортран.

А чем это плохо? Друге дело, что встроенный язык не является в полном смысле фортраном, то есть макрос не пересоберёшь после отладки. Вот здесь и возникает основное преимущество root.

В gnuplot , к сожалению на текущий момент нельзя делать ничего кроме построения графиков, правда делает это он очень неплохо. Там где мне нужны только картинки - мониторинг использую именно gnuplot, но для анализа необходим root/paw.

С уважением Евгений

P.S. Плохо что у root лицензия не свободная.

Evgueni ★★★★★
()
Ответ на: комментарий от sS

Спасибо за помощь с советом (про индексы).

anonymous
()
Ответ на: Про "поделки". от Crazy_Doctor

"поделки" - в смысле не GUI, а недостаточной функциональности в построении графиков.

Я лично предпочитаю gnuplot.

pandrey ★★
() автор топика
Ответ на: комментарий от pandrey

Все так интересно описано... А где-же упоминание про матлаб? Вроде все настоящие профессионалы только им и пользуються. Тут тебе и обработка данных и графика (по духу как у гнуплота).

В общем именно матлаб - стандарт, а все остальное... для нищих студентов.

Кстати, он и под Линукс есть.

anonymous
()
Ответ на: комментарий от anonymous

>В общем именно матлаб - стандарт, а все остальное... для нищих студентов.

Угу, видимо, Slack, KEK и CERN это сборище нищих студентов. Чтоб я такой нищий был.

Evgueni ★★★★★
()
Ответ на: комментарий от anonymous

> А где-же упоминание про матлаб? Вроде все настоящие профессионалы только им и пользуються.

Ага-ага, а ты вот настоящий профессионал? Или пока только слово "пользуются" с мягким знаком пишешь? ;-)

anonymous
()
Ответ на: комментарий от anonymous

>В общем именно матлаб - стандарт, а все остальное... для нищих студентов.

Это вы чегой то перепутали ;)

во первых матлаб это как раз для студиков а вот проф-инструменты _всегда_ узкоспeциализированы (попробовали бы вы решить матлабом задачку которую к примеру решает FLUENT ;))))

во вторых матлаб не есть рисовалкой коей является гнуплот

если интересно какие бывают рисовалки см.

http://graphics.gmu.edu/graphics-Software/

http://www.cse.uiuc.edu/heath/scicomp/software.html

http://www.cs.purdue.edu/homes/sun/Resources/software_graphics.html

sS ★★★★★
()
Ответ на: комментарий от Evgueni

>Угу, видимо, Slack, KEK и CERN это сборище нищих студентов. Чтоб я такой нищий был.

Ну на окружающем фоне они не особо богатые (если говорить о зряплатах) ;)

sS ★★★★★
()
Ответ на: комментарий от Evgueni

Evgueni (Score: 115 MaxScore: 115) (*) (21.04.2004 14:52:26):

> Есть простеший туториал, где часто используемые приёмы показываются на примерах.

Был бы благодарен за ссылку или текст в электронном виде.

> gnuplot , к сожалению на текущий момент нельзя делать ничего кроме построения графиков,

Разумеется, я говорю только про рисовалку. Обработка данных в Гнуплоте находится в зачаточном состоянии -- а оно надо?

Die-Hard ★★★★★
()
Ответ на: комментарий от sS

Это очень спорный вопрос, особенно по поводу CERN.

Evgueni ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.