ソフトウェアエンジニアの日常の雑記

日々思ったことをまとめます

JFreeChartでTimeSeriesChartを書いてみた

javaのお勉強の一環でJFreeChartでTimeSeriesChart(時系列チャート)を書いてみた。画像で出力すると一々選択して開かないといけないのが面倒で、swingで書いてみた。なぜか文字化けしてるけどあまり細かいことは気にせず。IDEはやっぱり便利。

まだX軸,Y軸の編集やデータが固定でかっこ悪いけど、忘れないうちにメモ代わりで。次はX軸,Y軸の編集とcsvでの読み込みをあわせてみよう。


下記ソースコード

                            • -

import javax.swing.JFrame;
import java.awt.BorderLayout;

import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.data.time.Month;
import org.jfree.data.time.TimeSeries;
import org.jfree.data.time.TimeSeriesCollection;

/**
*
* @author earu
*/
public class TimeSeriesChart extends JFrame{

/**
* @param args the command line arguments
*/
public static void main(String[] args) {
TimeSeriesChart frame = new TimeSeriesChart();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setBounds(200, 200, 200, 200);
frame.setTitle("チャートサンプル");
frame.setVisible(true);
}

TimeSeriesChart(){

TimeSeriesCollection chartdata = new TimeSeriesCollection();
TimeSeries series = new TimeSeries("Aクラス", Month.class);
series.add(new Month(7, 2007),120);
series.add(new Month(8, 2007),140);
series.add(new Month(9, 2007),150);
series.add(new Month(10, 2007),100);
series.add(new Month(11, 2007),200);
series.add(new Month(12, 2007),210);
series.add(new Month(1, 2008),170);

chartdata.addSeries(series);

JFreeChart chart = ChartFactory.createTimeSeriesChart("test", "test1", "test2", chartdata, true, false, false);
ChartPanel cpanel = new ChartPanel(chart);
getContentPane().add(cpanel, BorderLayout.CENTER);

}
}

                                                  • -

参考サイト:http://www.syboos.jp/opensource/doc/20080310223715891.html