2010年2月19日金曜日

groovyとJFreeChartでガントチャートを描画する

groovyとJFreeChartでガントチャートを描画するには、以下のコードを実行します。

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

s1 = new TaskSeries("ABCプロジェクト")
s1.with {
add(new Task("要件定義",
new GregorianCalendar(2010, 1-1, 20).time,
new GregorianCalendar(2010, 1-1, 25).time)
)
add(new Task("設計",
new GregorianCalendar(2010, 1-1, 26).time,
new GregorianCalendar(2010, 1-1, 31).time)
)
add(new Task("実装",
new GregorianCalendar(2010, 2-1, 1).time,
new GregorianCalendar(2010, 2-1, 10).time)
)
add(new Task("テスト",
new GregorianCalendar(2010, 2-1, 11).time,
new GregorianCalendar(2010, 2-1, 28).time)
)
}
tsc = new TaskSeriesCollection()
tsc.add(s1)

// ガントチャート
jfc = ChartFactory.createGanttChart(
"進捗管理",
"項目",
"日付",
tsc,
true,
false,
false)
// 日付のフォーマット指定
jfc.getPlot().getRangeAxis().setDateFormatOverride(
new java.text.SimpleDateFormat("yyyy/MM/dd")
)

ChartUtilities.saveChartAsPNG(
new File("./gantt-chart.png"), jfc, 400, 200)


出力画像(gantt-chart.png)
groovyとJFreeChartで描画したガントチャート

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

0 件のコメント:

コメントを投稿