JFree Chartを使用しグラフをカスタマイズする

|
JFree chartを使用しグラフオプションにない設定を追加することができます。
ここはその一例としてサンプルファイル「Bar Line chart」の折れ線に数値ラベルを表示させるカスタマイズを行います。

まずサンプルレポートをプレビューします。
ご覧の通り、折れ線グラフに数値ラベルはありません。
折れ線グラフの設定可能なオプションにない設定は
標準機能では実現できません。

18060100.PNG

ですが、「Scripting」機能を使用することで、グラフオプションにない項目でも
JFree chartで実現できる範囲において技術的に実現可能です。

「Scripting」を使用する場合は、チャートをダブルクリックし編集ダイアログを表示させます。
左ペインの最下部「Scripting」の「Chart Post-Processing Script Language」項目でValueのドロップダウンリストより使用スクリプトを設定します。
次に「Chart Post-Processing Script」項目のvalueのボタン「...」をクリックし、スクリプトソースを入力します。
ソースはこちらのJava Docを参照し作成します。

18060101.PNG

折れ線グラフの数値ラベルを表示させるために、ここでは次のように入力しています。

Chart Post-Processing Script Language : beanshell
Chart Post-Processing Script :
---
 chart.getCategoryPlot().getRenderer(1).setBaseItemLabelsVisible(true);

 

// 数値ラベルのフォーマット定義

//chart.getCategoryPlot().getRenderer(1).setBaseItemLabelGenerator(new org.jfree.chart.labels.StandardCategoryItemLabelGenerator("{2}", new java.text.DecimalFormat("#,###")));

 

// 数値ラベルのフォーマット定義(よりシンプル)

chart.getCategoryPlot().getRenderer(1).setBaseItemLabelGenerator(new org.jfree.chart.labels.StandardCategoryItemLabelGenerator());


---


入力後、OKボタンで閉じてレポートをプレビューすると、

折れ線グラフの数値ラベルが表示されます。

18060102.PNG


その他、setBaseItemLabelPaintメソッドを使用して、
数値ラベルに色を付けることも可能です。
あらかじめ用意された使用可能なメソッドを活用し、
より便利で見やすいグラフを作成してみてはいかがでしょうか。



2018年6月

          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

月別 アーカイブ