コンソールアプリ(またはNTサービス)内からグラフを生成し、ビットマップにエクスポートする方法を探しています。これはバックエンドプロセスであるため、グラフが表示されることはありません。ファイルに保存しました。私のコンソールはこれを複数回並行して実行するため、完全にスレッドセーフである必要があります。
サードパーティのコンポーネントは問題ありませんが、無料の方が良いです:D
ありがとう
GDI +に精通している場合は、メモリ内のビットマップに必要なものを描画してファイルに保存できます。同じファイルを参照したり、複数のスレッドで同じソースデータ参照を渡したりしない限り、問題はありません。これは、コンソールアプリ、Windowsサービス、Webサービスなどでラップできるビットマップを手続き的に生成する方法の簡単な例です。
Image bmp = new Bitmap(intWidth, intHeight);
Graphics g = Graphics.FromImage(bmp);
Rectangle r = new Rectangle(0, 0, intWidth, intHeight);
g.DrawEllipse(Pens.Red, g.VisibleClipBounds);
bmp.Save(strFileNameWithPath);
グラフの生成に関しては、数学のスキル、ソースデータの構造、作成するグラフの種類に大きく依存します。すでにこれを行っているライブラリは確かにありますが(Telerikが思い浮かびます)、私は「自分でロールする」種類のコーダーです。:)
MS Chartingコンポーネント-無料:
Excel相互運用機能アセンブリを使用します。チャートに最適で、非常に使いやすいです。チャートに加えることができる多くのカスタマイズと変更もあります。
簡単なチュートリアル:
http://www.dotnetperls.com/excel-chart
これは、必要なアセンブリファイルです。
http://msdn.microsoft.com/en-us/library/microsoft.office.interop.excel(v=office.11).aspx