
正文
jfree-生成xy图
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
需要导入的包:
import org.jfree.chart.*;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.data.category.DefaultCategoryDataset;
import org.jfree.data.general.SeriesException;
import org.jfree.data.time.Second;
import org.jfree.data.time.TimeSeries;
import org.jfree.data.time.TimeSeriesCollection;
import org.jfree.data.xy.XYDataset;
若是maven工程,需要引入依赖如下:
<dependency>
<groupId>jfree</groupId>
<artifactId>jfreechart</artifactId>
<version>1.0.13</version>
</dependency>
/**
* 生成xy图
*/
public static void drawXYChart(String imgTitle,String xLable,String yLabel,XYDataset dataset,String imgPath) {
try {
JFreeChart timechart = ChartFactory.createTimeSeriesChart(imgTitle, xLable, yLabel,
dataset, false, false, false);
//定义图片宽度和高度
int width = 560;
int height = 370;
File timeChart = new File(imgPath);
//图片以JPEG格式保存
ChartUtilities.saveChartAsJPEG(timeChart, timechart, width, height);
}catch (Exception e){
e.printStackTrace();
} }
public static void main(final String[] args) throws Exception {
final TimeSeries series = new TimeSeries("Random Data");
XYDataset dataset = (XYDataset) new TimeSeriesCollection(series);
List<Long[]> list = new ArrayList<>();
list.add(...) //添加一些测试数据来填充list对象
for(Long[] item : list){
Second current = new Second(new Date(item[0]));
series.add(current,item[1]);
}
DrawImgUtil.drawXYChart("computing Test","Seconds","Value",dataset, "/Users/test/per/" + imgName ); }
生成图片如下:







