Как мне создавать графики в Perl на Windows? - PullRequest
9 голосов
/ 15 сентября 2008

Как мне использовать Perl для создания графиков?

Я выполняю запланированное задание, которое создает текстовые отчеты. Я хотел бы перейти к следующему шагу (для управления), а также создать некоторые графики, которые согласуются с этим. Это возможно / возможно? Было бы здорово, если бы я мог сделать это с помощью Office как-нибудь.

обновление: решения, которые я собираюсь исследовать в этом порядке

  • Spreadsheet :: WriteExcel (похоже, теперь это изменилось с момента, когда я в последний раз исследовал это .... подождите, это было предложено автором модуля.
  • График GD - теперь он доступен для ActivePerl (не в последний раз, когда я смотрел)
  • SVG
  • Открытые графики выглядят интересно.
  • ChartDirector

Ответы [ 15 ]

7 голосов
/ 15 сентября 2008

Все методы, упомянутые выше, действительно хороши, но лично мне нравится SVG :: TT :: Graph . Мне очень нравится сила, которую дает SVG для рисования действительно красивых графиков.

7 голосов
/ 15 сентября 2008

GD и GD :: Graph, вероятно, ваши лучшие ставки, вы можете использовать их для создания изображений, которые затем можно встраивать во все, что вам нужно.

6 голосов
/ 15 сентября 2008

Также вы можете взглянуть на Модуль CPAN Google Charts

use Google::Chart;

  my $chart = Google::Chart->new(
    type => "Bar",
    data => [ 1, 2, 3, 4, 5 ]
  );

  print $chart->as_uri, "\n"; # or simply print $chart, "\n"

  $chart->render_to_file( filename => 'filename.png' );
5 голосов
/ 16 сентября 2008

На работе мы использовали отличный Chartdirector .

Это не бесплатно, но очень дешево (может быть, 50 баксов или около того). Стоимость того стоит, так как API и документы превосходны (намного лучше, чем GD!), Поэтому легко экономят больше времени.

Существует также бесплатная версия, которая включает в себя небольшой желтый баннер, рекламирующий продукт на каждом графике - если честно, если это для личного использования, вы можете пойти на это, поскольку на самом деле это совсем не навязчиво.

Chartdirector доступен для многих платформ (Win, Linux, Solaris, BSD, OSX) и имеет API для многих языков (Perl, ASP, .NET, Java, PHP, Python, Ruby, C ++).

Вывод очевиден, как вы можете видеть на странице их примеров .

4 голосов
/ 19 сентября 2008

Извините за то, что выдувал мою собственную трубу, но вам может быть интересно посмотреть несколько слайдов, которые я сделал для краткой презентации о Графики с помощью Perl .

Здесь упоминаются некоторые из предложенных здесь советов, но также приводятся некоторые фрагменты кода, которые вы могли бы использовать, чтобы помочь вам получить максимальную отдачу от того, что вы делаете.

3 голосов
/ 08 октября 2008

Еще не пробовал, но Chart :: Clicker выглядит довольно изящно.

Я думаю, что он использует графическую библиотеку Cairo (альтернативу GD), но на самом деле построен на основе Graphics :: Primitive , который является "интересным" графически независимым пакетом.

Автор, о котором идет речь ( GPHAT ), похоже, собирает несколько интегрированных инструментов для создания отчетов ... http://www.onemogin.com/blog/582-pixels-and-painting-my-recent-cpan-releases

На заметку ... использовали ChartDirector и OFC, и оба хороши (особенно если они основаны на веб-технологиях).

3 голосов
/ 16 сентября 2008

Модуль Perl Spreadsheet :: WriteExcel позволяет создавать книги Excel, содержащие диаграммы.

Сначала необходимо создать нужный тип диаграммы в Excel, а затем извлечь его с помощью утилиты chartex , которая устанавливается вместе с Spreadsheet :: WriteExcel.

Затем шаблон диаграммы можно добавить в новую рабочую книгу и создать для ссылки на новые данные.

Документация здесь и несколько примеров в каталоге диаграмм дистрибутива.

Однако механизм немного негибкий, и иногда бывает сложно получить именно тот результат, который вам нужен.

3 голосов
/ 15 сентября 2008

В зависимости от сложности вашего графа, просто сгенерируйте командный файл для Gnuplot & mdash; или GraphViz / Dotty , в зависимости от того, какой граф вы ссылаетесь на & mdash; трюк?

3 голосов
/ 15 сентября 2008

Spreadsheet :: WriteExcel :: Chart

Вам может понадобиться что-то вроде клубничного или ванильного Perl для компиляции. Или ppm может иметь модуль.

Учебная ссылка: http://search.cpan.org/dist/Spreadsheet-WriteExcel/charts/charts.pod

2 голосов
/ 16 сентября 2008

Он не будет работать с Office, но мне действительно нравится Chart :: OFC , который создаст Open Flash Charts . Очень приятный на вид и простой в использовании.

...