2010年2月26日金曜日

groovyとJFreeChartでローソク足グラフの取引量棒グラフの色を変更する

groovyとJFreeChartでローソク足グラフの取引量棒グラフの色を変更するには、以下のコードを実行します。

import org.jfree.chart.*
import org.jfree.chart.plot.*
import org.jfree.data.xy.*

dohlcds = new DefaultOHLCDataset("A社",
[
new OHLCDataItem(
(new GregorianCalendar(2009,10,1)).time,
1100, // open
1200, // high
1000, // low
1150, // close
100 // volume
),
new OHLCDataItem(
(new GregorianCalendar(2009,10,2)).time,
1140, // open
1250, // high
1010, // low
1020, // close
110 // volume
),
new OHLCDataItem(
(new GregorianCalendar(2009,10,3)).time,
1020, // open
1280, // high
1040, // low
1190, // close
90 // volume
),
new OHLCDataItem(
(new GregorianCalendar(2009,10,4)).time,
1200, // open
1340, // high
1140, // low
1330, // close
150 // volume
),
new OHLCDataItem(
(new GregorianCalendar(2009,10,5)).time,
1320, // open
1440, // high
1300, // low
1470, // close
250 // volume
)
] as OHLCDataItem[])




jfc = ChartFactory.createCandlestickChart(
"株価推移",
"日付",
"株価",
dohlcds,
false)

// 時間のフォーマット
jfc.getPlot().getDomainAxis().setDateFormatOverride(
new java.text.SimpleDateFormat("MM/dd")
)
// 取引量の色設定
jfc.getPlot().getRenderer().setVolumePaint(
new java.awt.Color(0xff, 0xff, 0xe0)
)

ChartUtilities.saveChartAsPNG(
new File("./candlestick-chart-color-ch.png"), jfc, 300, 200)


出力画像(candlestick-chart-color-ch.png)


動作環境
JDK1.6 Update 15, groovy 1.6.3, JFreeChart1.0.13, JCommon1.0.16

0 件のコメント:

コメントを投稿