1

Swing アプリケーションでさまざまなデータを表示するグラフを作成したいと考えていますが、各グラフのデータは常に変化しています。

私のデータがどのように動作するかの良い例えは、アプリケーションの実行中にシステムの空きメモリと使用済みメモリが (おそらく) 上下することです。グラフをどのように表示するかは、Windows タスク マネージャーの CPU 使用率グラフによく似ています (特定の色やグリッドを意味するのではなく、折れ線グラフの外観を意味します)。

常に新しいデータ ポイントを「追加」するチャートを生成する最良の方法は何ですか。これらのポイントを定期的に追加する最良の方法はありますか?

また、どのチャート/グラフ API を使用すればよいですか? 依存関係をできるだけ小さくしたいのですが、おそらく必要であることは承知しています。

tl;dnr : タスク マネージャーで CPU 使用率の履歴のようなグラフを作成したいのですが、Swing では Java で作成します。

4

3 に答える 3

5

JFreeChartは、Java でグラフを生成するための一般的な選択肢です。

最近のコンピュータは非常に強力であるため、このアプリケーションには「遅すぎる」合理的なチャート作成ソリューションを見つけるのに苦労するでしょう.


関連項目: JFreeChart を使用して最近の変更を時系列で表示する(リンクについては@trashgodを参照してください!)。

于 2011-03-02T03:00:56.857 に答える
3

カスタムのグラフ作成アプリケーションがなくても、自分でこれを行うことができると思います。

グラフ ポイントを ArrayList に格納できるはずです。次に、Graphics.drawLine(...) メソッドを使用して各ポイントを接続できます。

次に、Swing Timer を使用して、グラフの更新をスケジュールできます。タイマーが起動するたびに、最初からいくつかのポイントを削除し、最後にいくつかのポイントを追加できます。次に、カスタム コンポーネントで repaint() を呼び出します。

于 2011-03-02T03:31:41.883 に答える
2

JChart2Dを見てください。Web ページから:

JChart2D は、OSI 承認の GNU LESSER GENERAL PUBLIC LICENSE に基づいて公開されている最小限のリアルタイム チャート作成ライブラリです。トレースポイントで構成される複数のトレースを表示するように設計されています。JChart2D は、単一の構成可能なスイング ウィジェットである Chart2D を中心にしています。
JChart2D はエンジニアリング タスク用であり、プレゼンテーション用ではありません。その専門は実行時です - 最小限の構成オーバーヘッドでデータを動的に正確に表示します。
于 2011-03-02T13:14:53.940 に答える