10

Perl を使用してグラフを作成するにはどうすればよいですか?

テキスト レポートを作成するスケジュールされたジョブを実行しています。これを次のステップ (経営陣) に移し、それに伴うグラフもいくつか作成したいと思います。これは可能/実行可能ですか? Office を使用してこれを何らかの方法で行うことができれば素晴らしいことです。

更新: この順序で調査するソリューション

  • Spreadsheet::WriteExcel (これは、私が最後に調査したときから変更されているようです....待ってください、これはモジュールの作成者によって提案されました.クールです.)
  • GD グラフ - これは ActivePerl で利用できるようになりました (最後に見たときはありませんでした)
  • SVG
  • オープン チャートは興味深いものです。
  • チャートディレクター
4

15 に答える 15

7

上記のすべての方法は本当に良いですが、個人的にはSVG :: TT::Graphが好きです。私はSVGが本当に見栄えの良いグラフを描くためにあなたに与える力が本当に好きです。

于 2008-09-15T16:56:22.520 に答える
7

GD と GD::Graph はおそらく最善の策です。これらを使用して画像を作成し、必要なものに埋め込むことができます。

于 2008-09-15T16:44:35.747 に答える
6

また、 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' );
于 2008-09-15T19:55:14.040 に答える
5

仕事では、優れたChartdirectorを使用しています。

無料ではありませんが、非常に安価です (おそらく 50 ドル程度)。API とドキュメントはどちらも優れているため (GD よりもはるかに優れています!)、コストに見合うだけの価値があり、その分多くの時間を簡単に節約できました。

無料版もあり、各チャートに製品を宣伝する小さな黄色のバナーが含まれています。正直なところ、これが個人的な使用である場合は、まったく邪魔にならないので、それを選択できます.

Chartdirector は多くのプラットフォーム (Win、Linux、Solaris、BSD、OSX) で利用でき、多くの言語 (Perl、ASP、.NET、Java、PHP、Python、Ruby、C++) 用の API も備えています。

例のページでわかるように、出力は目にやさしいです。

于 2008-09-15T21:05:48.567 に答える
4

私自身のトランペットを吹いて申し訳ありませんが、 Perlを使ったグラフ作成についての短いプレゼンテーションのために私が行ったいくつかのスライドを見てみたいと思うかもしれません。

ここではいくつかの提案について説明しますが、実行していることを最大限に活用するために使用できる可能性のあるコードスニペットもいくつか提供します。

于 2008-09-19T19:21:45.030 に答える
3

Perl モジュールSpreadsheet::WriteExcelを使用すると、グラフを含む Excel ワークブックを作成できます。

最初に Excel で必要な種類のグラフを作成し、次にSpreadsheet::WriteExcel と共にインストールされるchartexというユーティリティを使用してそれを抽出する必要があります。

その後、チャート テンプレートを新しいワークブックに追加して、新しいデータを参照できるようにします。

ドキュメントはここにあり、ディストリビューションの charts ディレクトリにいくつかの例があります。

ただし、メカニズムは少し柔軟性がなく、必要な正確な結果を得るのが難しい場合があります。

于 2008-09-15T22:06:50.620 に答える
3

グラフの複雑さにもよりますが、参照しているグラフの種類に応じてGnuplot (またはGraphViz/Dotty )のコマンド ファイルを生成するだけでうまくいくのでしょうか?

于 2008-09-15T16:46:44.213 に答える
3

まだ試していませんが、Chart::Clickerは非常に便利です。

Cairo グラフィック ライブラリ (GD の代替) を使用していると思いますが、実際には「興味深い」グラフィックに依存しないパッケージであるGraphics::Primitiveの上に構築されています。

問題の著者(GPHAT)は、レポートを作成するための統合ツールをいくつかまとめているようです... http://www.onemogin.com/blog/582-pixels-and-painting-my-recent-cpan-releases

余談ですが... ChartDirectorとOFCの両方を使用しましたが、どちらも優れています(特にWebベースの場合)。

于 2008-10-08T09:10:51.020 に答える
3
Spreadsheet::WriteExcel::Chart

これをコンパイルするには、ストロベリーまたはバニラ Perl のようなものが必要になる場合があります。または、PPM にモジュールがある可能性があります。

チュートリアルのリンク: http://search.cpan.org/dist/Spreadsheet-WriteExcel/charts/charts.pod

于 2008-09-15T16:43:39.057 に答える
2

Office では動作しませんが、 Open Flash Chartsを作成するChart::OFCがとても気に入っています。非常にスリムな見た目で使いやすい。

于 2008-09-16T17:53:51.827 に答える
2

それは、どのような種類のグラフ (グラフの外観) とデータ ソースに大きく依存します。YUI チャートを使用して、元のソース データの JSON スタイル バージョンを提供することで、良い結果が得られました。たとえば、ライブ チャートをロールオーバーして正確な値を取得するのは非常に簡単です。開発者ページにはたくさんの例があります。

于 2008-09-15T16:47:33.913 に答える
1

MS Officeでこれを実行するように設定されている場合は、Win32::OLEモジュールを使用してOLEを介してExcelを制御できます。これは実行が遅くなる傾向があり、ExcelのAPIのドキュメントを見つけるのが難しい場合があることに注意してください。プラス面としては、手動で実行できるほとんどすべてのことを実行できます。

于 2008-09-15T17:03:00.680 に答える
1

もちろんメタプログラミング!グラフを作成する R スクリプトを出力します。

于 2008-10-17T17:02:20.383 に答える
1

PGPlot は優れたグラフを作成します。ここにいくつかのがあります。Perl 5.8.8 では正常に動作しますが、5.10.0 では機能しません。

于 2008-10-17T16:51:00.700 に答える
0

Spreadsheet::WriteExcelを使用すると、データを Excel に取り込んでから、グラフ用の Excel 方程式を記述できます。

于 2008-09-17T15:32:28.600 に答える