Как я использую Perl для создания графиков?
Я выполняю запланированное задание, которое создает отчеты текста. Я хотел бы переместить это в следующий шаг (для управления) и также создать некоторые графики, которые соглашаются с этим. Действительно ли это возможно / выполнимый? Было бы замечательно, если я мог бы сделать этот Office использования некоторые как.
GD и GD:: График является, вероятно, Вашими лучшими выборами, можно использовать их для создания изображений, которые можно затем встроить в то, в чем Вы нуждаетесь.
Электронная таблица:: WriteExcel позволит Вам просто получить данные в Excel, затем записать уравнения Excel для графиков.
PGPlot делает большие графики. Здесь существуют некоторые примеры. Это хорошо работает с Perl 5.8.8, но повреждается в 5.10.0
Метапрограммирование, конечно! Произведите сценарий R, который создает график.
Если Вы установлены при выполнении этого в MS Office, можно использовать Win32:: модуль OLE для управления Excel через OLE. Предупредите, что это имеет тенденцию работать медленно, и может быть трудно найти документацию для API Excel. Зато, это позволяет Вам делать в значительной степени все, что можно сделать вручную.
Электронная таблица:: WriteExcel:: Диаграмма
Вам, возможно, понадобилось бы что-то как земляника или ванильный жемчуг, чтобы заставить это компилировать. Или ppm мог бы иметь модуль.
Учебная ссылка: http://search.cpan.org/dist/Spreadsheet-WriteExcel/charts/charts.pod
Это не будет работать с Office, но мне действительно нравится Диаграмма:: ОТДЕЛ, который создаст, Открывает Flash Charts. Очень гладкий взгляд и простой в использовании.
Еще не попробовали его, но Диаграмма:: Кликер выглядит довольно изящным.
Я думаю, что это использует Каир графическая библиотека (альтернатива GD), но на самом деле создается сверху Графики:: Примитивный, который является "интересным" графическим агностическим пакетом.
Рассматриваемый автор (GPHAT), кажется, соединяет некоторые интегрированные инструменты для того, чтобы представить отчеты... http://www.onemogin.com/blog/582-pixels-and-painting-my-recent-cpan-releases
На ноте стороны... использовали и ChartDirector и ОТДЕЛ, и оба хороши (особенно если веб-).
В зависимости от сложности Вашего графика просто генерируя командный файл для Gnuplot — или GraphViz/Dotty, в зависимости от то, какой график Вы обращение к — могло бы добиться цели?
Извините за выдувание моей собственной трубы, но Вам могло бы быть интересно взглянуть некоторые слайды, которые я сделал для краткого представления о Построении графика С Perl.
Это упоминает некоторые предложения здесь, но также и дает Вам некоторые фрагменты кода, которые Вы смогли использовать, чтобы помочь Вам получить максимум от того, что Вы делаете.
Это зависит в значительной степени какой графики (вид их), и источник данных. У меня был некоторый хороший результат при помощи Диаграмм YUI и питания их некоторые версии стиля JSON данных первоисточника. Переворачивание живой диаграммы для точных значений довольно легко, например. Существует много примеров на страницах разработчика.
Также можно смотреть на модуль Google Charts CPAN
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' );
Все упомянутые выше методы действительно хороши, но лично мне нравится SVG:: TT:: График. Мне действительно нравится питание, которое SVG дает Вам для рисования действительно привлекательных графиков.
На работе мы использовали превосходный Chartdirector.
Это не свободно, но очень дешево (возможно, приблизительно 50 маркеров). Стоимость определенно стоит того, поскольку API и документы оба превосходны (путь лучше, чем GD!), так легко сохранил больше, чем то количество моего времени.
Существует также бесплатная версия, которая включает маленькую желтую баннерную рекламу продукт в каждую диаграмму - чтобы быть честной, если это для персонального использования, можно пойти для этого, поскольку это действительно не очень навязчиво вообще.
Chartdirector доступен для большого количества платформ (Победа, Linux, Солярис, BSD, OSX) и имеет API для большого количества языков, также (Perl, ASP.NET, Java, PHP, Python, Ruby, C++).
Вывод симпатичен, как Вы видите на уровне их страницы в качестве примера.
Электронная таблица модуля Perl:: WriteExcel позволяет Вам создавать рабочие книги Excel, которые включают диаграммы.
Сначала необходимо создать тип диаграммы, которую Вы хотите в Excel и затем извлекаете его использование утилиты, названной chartex, который установлен с электронной таблицей:: WriteExcel.
Шаблон диаграммы может затем быть добавлен к новой рабочей книге и сделан сослаться на новые данные.
Документация, тут и там несколько примеров в каталоге диаграмм дистрибутива.
Механизм немного негибок однако, и это иногда хитро для получения точного результата, который Вы хотите.