.NET用のグラフ作成ツール



少し前まで、私は些細な仕事に直面しなければなりませんでした-.NETのグラフィカルな図面をレンダリングできるソリューションを見つけるために。 すぐに線形グラフにしか興味がないという予約をしてください。 既存のソリューション(これらはrdlcレポートに組み込まれたグラフでした)のやり直しを促した障害は、スピードでした。 一般に、目的のソリューションに対して次の要件が作成されました。

  1. この最適化をエンドユーザーに気付かれないようにする必要があります。そのため、最終的にその前身と同じように見えるようにするために、ソリューションは広くカスタマイズ可能でなければなりません。
  2. 速く作業します(もちろん、ユーザーは待ちたくありません)。
  3. 無料またはオープンソースにすることをお勧めします。 優れた有料ソリューションが見つかった場合、購入は大きな問題にはなりませんが、オープンソースから始める方が良いでしょう。




何がされましたか?


グーグルでは、この問題を解決するための非常にいくつかのオプションがあり、それらのすべてが多くの点で非常に異なっていることがわかりました(コミュニティのサイズ、速度、利便性)。 ソリューションを選択する過程で、8つの無料オプションがテストされました。



最初に、できるだけ多くのオプションを1か所に集めて速度をテストする必要があると判断しました。その後、作業を​​バスケットに入れるのは非常に残念でした。 したがって、この小さな記事を作成し、何が起こったのかをGitHubに投稿することが決定されました 。 したがって、必要がある場合は、各ソリューションを自分用にカスタマイズし、すぐに確認できます。 個人的には、最初はそのような記事を見逃していました。 ソースコードは教祖に笑顔をもたらすかもしれませんが、.NETとASPだけを掘り下げる初心者にとっては、間違いなく非常に便利です。

作業速度を比較するために、チャートのデフォルト設定が取得され、出力画像の解像度が示され、固定数のポイントがそこに送られます。 各ソリューションは複数回実行され、平均が実際の速度として採用されます。 繰り返しますが、これは十分に主観的なものであり、より美しいアプローチを提供できる場合は、興味を持って聞きます。

私のPC(Intel Core I5 3.10 GHz、8GB RAM、Windows 7 x64)で、次の速度分布がリリースされました。

いや

解決策

反復回数

合計時間(秒)

反復あたりの平均時間(秒)

1

廃盤チャート

5

1.9071907

0.38143814

2

Zedグラフ

5

2.750275

0.550055

3

NPlot

5

3.1833183

0.63666366

4

Webチャートコントロール

5

5.130513

1.0261026

5

Microsoftチャートコントロール

5

6.8456845

1.3691369

6

オキシプロット

5

7.0067006

1.40134012

7

オープンマインドプロット

5

8.257

1.6514

8

Googleシャープチャート

5

9.8049804

1.96099608



さまざまな入力パラメーター(画像解像度、グラフ上のポイント数、PCパラメーター、インターネット速度、ムーンフェイズなど)の結果はわずかに異なるため、自宅でパフォーマンスをテストできます。

これは、特定のタスクに大きく依存するかなり主観的な情報であるため、機能とカスタマイズ機能の詳細な比較は特に行いませんでした。 必要に応じて、誰もが30分を費やし、休憩を取り、ソリューションのアーキテクチャを見て、特定の要件に合わせてカスタマイズすることがいかに簡単かを理解できます。

他の誰かが記事にない無料の.NETグラフィックスソリューションを知っている場合は、コメントを書いて、それらを追加しようとします。



upd-(OpenMindedからソリューションを追加

upd2-(投票にDevExpressを含めた)



All Articles