Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Perl: Общие вопросы > График в виде картинки |
Автор: igorold 23.5.2007, 07:01 |
Необходимо в Perl-скрипте создать график в виде картинки и потом ее показывать в HTML-шаблоне. ОС - Линукс ... каким пакетом оптимальнее воспользоваться и можно привести ссылочку или кусок работающего кода ... плиииз ... |
Автор: amg 23.5.2007, 07:45 | ||
Обычно, насколько знаю, для этого обычно используют GD. Но мне не приходилось. У меня есть пример с gnuplot (д.б. в любом линуксе). Создается gif с графиком.
|
Автор: GoodBoy 23.5.2007, 10:50 |
igorold, use Image::Magick; Добавлено через 1 минуту и 14 секунд http://imagemagick.org/script/perl-magick.php |
Автор: Nab 23.5.2007, 13:46 |
А я бы SVG заюзал.... ![]() По моему самое многообещающее внедрение... |
Автор: igorold 25.5.2007, 08:22 | ||||
Скрипт при запуске выдал ошибку:
хотя такой файл есть : /usr/lib/perl5/site_perl/5.8.8/i386-linux/auto/Image/Magick/Magick.so
|
Автор: amg 25.5.2007, 08:49 |
igorold, нужно график функции нарисовать или просто работа с графикой? Для последнего ImageMagick подходит отлично, но нарисовать там какую-то хитрую линию - что-то я не помню, чтоб было легко. |
Автор: igorold 25.5.2007, 09:03 |
ну да, именно графики рисовать, с графикой работать не надо ... Твой пример вылетает на строке open GP, "| gnuplot" or die "$!\n" |
Автор: amg 25.5.2007, 09:25 |
Ну тогда глянь, можно ли с помощью ImageMagick нарисовать график, прежде чем этот пакет ставить. Я, например, о такой возможности ImageMagick не знаю, хотя уважаемый GoodBoy говорит, что можно. Кстати, Nab, расскажи (или ссылку дай), пожалуйста, как для рисования графиком SVG использовать. |
Автор: amg 25.5.2007, 12:05 | ||
Еще лучше использовать GD. По возможностям работы с изображениями эта библиотека, пожалуй, проигрывает ImageMagick, зато быстрее и в ней можно всякие графики рисовать (GD::Graph). Опять же, SVG. Хотя тут опасность есть (насчет нормальных браузеров, см. пост Nab'а). |
Автор: amg 25.5.2007, 12:27 |
Nab, посмотрел ссылки. Спасибо. Впечатляет. Но, насколько я понял, в SVG, все же не заложена возможность непосредственно рисовать графики функций (например, мне чаще всего требуется нарисовать график по точкам из таблицы со сглаживанием сплайнами). Для этого нужны сторонние библиотеки? |
Автор: igorold 25.5.2007, 13:31 | ||
... ну да .. конечно .. не было установлено ... получилось!!! для начала пойдет ... что посложнее потом попробую ... кстати GD я устанавливал, но чего то ему не хватает и он не работает у меня ... |
Автор: amg 25.5.2007, 14:51 | ||
Ну, раз получилось, то вот простейщий пример (в предыдущем я намеренно оставил все опции gnuplot, которые были у меня, вообще же gnuplot - мощнейший пакет для рисования графиков, ручек, за которые можно подергать, великое множество, достаточно сказать, что документация к нему - http://www.gnuplot.info/docs_4.0/gnuplot.html)
А про GD - эти модули - это, насколько я понимаю, лишь Perl-интерфейс к gdlibs. Т.е., чтобы модуль заработал, нужно установить сначала соответствующие библиотеки. Кстати, аналогичная ситуация с ImageMagick. |
Автор: Ramirez 7.6.2007, 14:16 |
Я во в последнее время склоняюсь больше в варианту апплета ли еще лучше flash. на страницу вставляется флешка, которая умеет рисовать разные графики (zxChart например) и ей скармливаются циферки или ссылка на скрипт который циферки отдает. и нагрузка на сервер меньше и возможностей больше. А если такой вариант не прокатывает - я бы не стал заморачиваться с GD а взял модули от RRDTOOL. |