2010年3月2日火曜日

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")
)
// volumeを非表示に
jfc.getPlot().getRenderer().setDrawVolume(false)
// 下限値
jfc.getPlot().getRangeAxis().setLowerBound(1000)

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


出力画像(candlestick-chart-lower.png)


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

0 件のコメント:

コメントを投稿