倭マン's BLOG

くだらない日々の日記書いてます。 たまにプログラミング関連の記事書いてます。 書いてます。

JFreeChart

はじめての幻獣 Griffon 研 (12) : Charts プラグインでグラフを描画する (1) install-plugin charts

今回は Charts プラグインを使ってグラフを描いてみます(一覧)。 前回までサンプルで使っていた「関数描画アプリケーション」への適用は次回に(予定)。 Charts プラグインは JFreeChart をベースにしたグラフ描画ツールで、Groovy の Builder を用いて構…

関数をプロットする

JFreeChart で関数をプロットする方法を紹介。チャートを生成する大雑把な手順は Function2D オブジェクトを生成する Dataset オブジェクトを生成する JFreeChart オブジェクトを生成して表示する です。Function2D インターフェース JFreeChart で関数を表…

対数軸を使う

JFreeChart で「対数軸」を使うためには、Plot オブジェクトに対して軸(LogAxis オブジェクト)をセットします。 Plot オブジェクトは JFreeChart オブジェクトから getPlot() メソッド(もしくは getCategoryPlot(), getXYPlot())によって取得できます。…

チャートを PNG, JPEG ファイルとして出力する

JFreeChart で構築したチャートを画像ファイルとして保存したい場合は、org.jfree.chart.ChartUtilities クラスの saveChartAsPNG(), saveChartAsJPEG() メソッド (static) を用います。使い方は簡単。 import org.jfree.chart.ChartUtilities; ... static v…

JFreeChart デモ

JFreeChart の JavaDoc やjava2s.com のデモを見てると、JFreeChart には、ChartFactory の static ファクトリメソッドから生成できるチャート以外にも、結構いろいろチャートが用意されてるようですね。 Plot オブジェクトや Renderer オブジェクトは、込み…

Dataset で分類する Chart あれこれ (8) : XYDataset とその愉快なサブクラスたち(概要)

XYDataset とそのサブクラスの概要1 今回は、XYDataset とそのサブクラスの概要を見ていきます。 XYDataset は、「複数の値のセット」みたいなデータです(以前やった CategoryDataset は「カテゴリ(分類子)と値のセット」のようなデータ)。 加えてデータ…

GroovyChart と戯れて (8) : データをビルダーで構築する

さて前回、データとビューの構築を分離する方法を見ましたが、折角 ChartBuilder を使うなら、ビューだけでなくデータ (dataset) もこれを使って構築したいというのは人情(ならぬ「Groovier 情」?)。ってことで、今回はチャートのビューとは別に ChartBui…

GroovyChart と戯れて (7) : データとビューを分離する

ChartBuilder はデータ (dataset) とチャートの表示設定をビルダーで構築できるライブラリで、今まで見てきたサンプルでは、データと表示設定を1回のビルダー構築で行っていました。 ただし、この方法では、データ構造や表示設定のカスタマイズが複雑になっ…

GroovyChart と戯れて (6) : ChartBuilder が構築するのは JFreeChart のラッパー

GroovyChart の ChartBuilder は JFreeChart (JFreeChart のチャートを表す型)オブジェクトを構築するのではなく、そのラッパークラスを構築します。 これは、それほど気にすることでもありませんが、JFrame などに埋め込むために ChartPanel を生成しよう…

GroovyChart と戯れて (5) : チャートを表示させるのに最低限必要なのは?

今回は、GroovyChart でチャートを表示させるために最低限必要なコードを見ていきます。 サンプルコードは前回使ってたものをベースに考えます。plot ノード データセットがないとグラフの描きようがないので、dataset ノードはおいておきましょう。 なので…

GroovyChart と戯れて (4) : サンプルコードをもう少し詳しく見てみよう

サンプルも無事に動いてくれたので、次はサンプルコードをもう少し詳しく見てみます。サンプルコードは前々回に動かしたものを取り上げます(ただし、import 文章略。 また、一部変更しています): def builder = new ChartBuilder() // 1. ChartBuilder の…

GroovyChart と戯れて (2) : GroovyChart のサンプルを動かす

さぁ、やっとこさ GroovyChart のサンプルを動かすときがきた!まずは groovychart サイトの「Examples of using JFreeChart」のページからサンプルを拝借(いくらか変更してます): import javax.swing.WindowConstants as WC import com.thecoderscorner.…

GroovyChart と戯れて (1) : GroovyChart のセットアップ

今回は GroovyChart のセットアップ。アーカイブのダウンロード GroovyChart は java.net で開発されてるようで(「groovychart プロジェクト ホーム」)、アーカイブもそこからダウンロードできます。というか、Maven2 に慣れてると、手動でダウンロード&…

GroovyChart と戯れて (0) : Groovy + JFreeChart

Griffon 0.9 のリリースとともに知ったのですが、JFreeChart のチャートを Groovy のビルダーを使って構築するライブラリ「GroovyChart」ってのがあるようです。Griffon を使う分には「Charts Plugin」というプラグインをインストールすれば簡単に使えるよう…

Dataset で分類する Chart あれこれ (7) : CategoryDataset と BarChart, BarChart3D, AreaChart

今回は、以前に CategoryDatset をやったときに完全に抜け落ちていた、BarChart, BarChart3D, AreaChart を見ていきます。 これらの使い方は LineChart, LineChart3D と概ね同じです。 使用するサンプルのデータも同じものを使っています。「Dataset で分類…

GroovyChart と戯れて (3) : GroovyChart は日本語に対応してるのか?それはやってみなくちゃ分からない。

さて、「Examples of using JFreeChart」には「円グラフ (Pie Chart)」のサンプルもあったので、これも動かしてみましょう(以降 import 文は省略): def largeFont = new Font('Arial', Font.BOLD, 15) def pieChart = new ChartBuilder().piechart3d(titl…

Dataset で分類する Chart あれこれ (6) : BoxAndWhiskerCategoryDataset と BoxAndWhiskerChart

今回は CategoryDataste のサブタイプ BoxAndWhiskerCategoryDataset とそれを要求するチャート BoxAndWhiskerChart を見ていきます*1。「Whisker」はヒゲのことで、BoxAndWhisker 図は誤差を含めてチャートにする際によく用いられます。BoxAndWhiskerCatego…

Dataset で分類する Chart あれこれ (5) : IntervalCategoryDataset と GanttChart

今回は CategoryDataset のサブタイプである IntervalCategoryDataset とそれを要求するチャート GanttChart を見ていきます。Gantt Chart とはプロジェクト管理や生産管理などで用いられる表だそうです(wikipedia:ガントチャート)。 「Gantt」はこの表を…

Dataset で分類する Chart あれこれ (3) : CategoryDataset と LineChart, LineChart3D

今回は、CategoryDataset を要求するチャートのうち、LineChart と LineChart3D のサンプルを見ていきます。CategoryDataset インスタンスの作成例 def dataset = new DefaultCategoryDataset() def m = 'Mass' def r = 'Radius' def d = 'Distance from Sun…

Dataset で分類する Chart あれこれ (2) : CategoryDataset とその愉快なサブクラスたち(概要)

CategoryDataset とそのサブクラス 今回は、CategoryDataset とそのサブクラスの概要を見ていきます。 CategoryDataset は、「カテゴリ(分類子)と値のセット」みたいなデータです(そのうちやる予定の XYDataset は「複数の値のセット」のようなデータ)。…

Dataset で分類する Chart あれこれ (4) : CategoryDataset と StackedXxxxChart, MultiplePieChart など

今回も、前回に続いて CategoryDataset を要求するチャートを見ていきます。今回見ていくチャートは StackedBarChart StackedBarChart3D StackedAreaChart MultiplePieChart MultiplePieChart3D WaterfallChart の6つです。CategoryDataset インスタンスの作…

Dataset で分類する Chart あれこれ (1) : PieDataset, WaferMapDataset

JFreeChart では、いろいろなチャートがあるけど、表示するためのデータモデル (Dataset) も、これまた盛り沢山。 1つのデータモデル(を表すインターフェース)にいくつもの実装(クラス)があり、また、1つのデータモデルをいくつかのチャートとして表示で…