大量の絶え間なく進化するデータを処理し、ブラウザを使用して使用可能な方法で表示するライブの大規模データセットチャート作成プラットフォームのオプションを探しています。charting platform
いくつかのFlashアプリケーションの "read XML file"アプローチに対して、DBバックエンドをベースにする必要があります。
大量の絶え間なく進化するデータを処理し、ブラウザを使用して使用可能な方法で表示するライブの大規模データセットチャート作成プラットフォームのオプションを探しています。charting platform
いくつかのFlashアプリケーションの "read XML file"アプローチに対して、DBバックエンドをベースにする必要があります。
JFreeChartは、無料でスケーラブルなソリューションです。
チャートは、ブラウザ上で閲覧可能であることを行っているので、あなたのデータの画像ファイルを生成し、それらを表示するには、gnuplotのようなものを使用することができます。 Gnuplotは本当に柔軟性があり、あなたは何かを作成することができますが、それはかなり速いです。しかし、あなたはデータを読んでそれをgnuplotにフィードしなければなりません。 Javaに固執したい場合に備えて、gnuplotにいくつかのJavaインタフェースがあります。適切な量になるようにリフレッシュヘッダーを設定し、データの更新を監視します。
のgnuplotについてはこちらをご覧ください:http://www.gnuplot.info
は、Javaインタフェースについてはこちらをご覧ください:http://www.gnuplot.info/links.html
シリアルスタティックイメージ作成のように見えます。 –
私はかつて150機と100.000タスクのガント図を表示しなければなりませんでした。カスタムレンダリングでカスタムJavaアプレットを作成し、データ転送はhttp + javaシリアル化APIによって処理されました。私は、他のソリューション(SVG、VML、Flash、イメージタグ)が単に遅すぎて操作が難しいことを発見しました。
更新:Hereはイメージです。コミュニティにとって残念なことに、これは産業プロジェクトであったため、ソースコードは公開されていません。私はそれについていくつかの概念だけを共有することができます。
図領域は、水平および垂直スクロールバー、ダイアグラム領域、時間ラベル、および両側にある2つのテーブルから構成されます。これらのコンポーネントは、イベントハンドラを介してリンクされています。スクロール/変更している場合、他のものに影響します。ガント図は、色がタスクのステータスを示すために使用される塗り潰し矩形で構成されています。レンダリングは、表示可能な各行と表示可能な開始日の間をループすることによってpaint()メソッドで行われます。このレンダリングでは、Graphics2Dのクリッピング機能に頼るのではなく、積極的なクリッピングを使用します。ユーザーは、ビューをパンおよびズームすることができます。
データは、直列化可能なデータ構造で格納されます。サーバー側のJavaコードには、データ構造全体のキャッシュが含まれています。この構造体は30秒ごとにリフレッシュされますが、バッキングデータベースから差異だけが取得されます。データはアプレットによって照会され、ガント・モデルに組み立てられ、シリアル化されてクライアント側に戻されます。クライアント/アプレット側でのデータリフレッシュは自動ではありません。ユーザーは更新ボタンをクリックする必要があります。これにより、予期しない変更を加えずに画像を評価することができます。
Ganttダイアグラムをレンダリングするには、多くのファンシーは必要ありません - fillRect、AlphaComposite、drawLine。より複雑なイメージが必要な場合は、私のアプローチでより多くのコーディングを行う必要があります。
これは興味深いアプローチです、それ以上の詳細は? –
を使用してデータを描画します。よくある質問。それは本当に、リアルタイムのチャートをサポートしていないと述べているよう
chart http://img140.imageshack.us/img140/5143/rapahelchart.png graph http://img269.imageshack.us/img269/6679/raphaelgraph.png
タイムライン、ズーム、その他の「インタラクティブ機能」を「スクロールする」ことができますか? –
はJFreeChartは、ライブデータのために最良の選択ではないかもしれません。ここで
はあなたが達成できるかのサンプルのカップルです。 – Markはい、リアルタイムに近いことが重要な要件です。 –
FYI:毎日のリアルタイムチャート作成にJFreechartを使用しています。 –