提供一个java生成折线图的代码并且提供其需要的JFreeChart的版本
时间: 2023-05-17 19:04:59 浏览: 59
以下是一个使用 JFreeChart 生成折线图的 Java 代码示例,需要 JFreeChart 版本 1.5.0 或更高版本:
```java
import java.awt.Color;
import java.awt.Dimension;
import java.io.File;
import java.io.IOException;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartUtilities;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.axis.CategoryAxis;
import org.jfree.chart.axis.NumberAxis;
import org.jfree.chart.plot.CategoryPlot;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.chart.renderer.category.LineAndShapeRenderer;
import org.jfree.data.category.DefaultCategoryDataset;
public class LineChartExample {
public static void main(String[] args) throws IOException {
// 创建数据集
DefaultCategoryDataset dataset = new DefaultCategoryDataset();
dataset.addValue(1.0, "Series 1", "Category 1");
dataset.addValue(2.0, "Series 1", "Category 2");
dataset.addValue(3.0, "Series 1", "Category 3");
dataset.addValue(4.0, "Series 1", "Category 4");
dataset.addValue(5.0, "Series 1", "Category 5");
dataset.addValue(6.0, "Series 1", "Category 6");
// 创建图表
JFreeChart chart = ChartFactory.createLineChart(
"Line Chart Example", // 图表标题
"Category", // X 轴标签
"Value", // Y 轴标签
dataset, // 数据集
PlotOrientation.VERTICAL, // 图表方向
true, // 是否显示图例
true, // 是否生成工具提示
false // 是否生成 URL 链接
);
// 设置图表样式
CategoryPlot plot = chart.getCategoryPlot();
plot.setBackgroundPaint(Color.white);
plot.setRangeGridlinePaint(Color.gray);
plot.setDomainGridlinePaint(Color.gray);
CategoryAxis domainAxis = plot.getDomainAxis();
domainAxis.setLowerMargin(0.0);
domainAxis.setUpperMargin(0.0);
NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());
LineAndShapeRenderer renderer = (LineAndShapeRenderer) plot.getRenderer();
renderer.setSeriesPaint(0, Color.blue);
// 保存图表为 PNG 文件
ChartUtilities.saveChartAsPNG(new File("line-chart.png"), chart, 800, 600);
}
}
```
这段代码使用 `DefaultCategoryDataset` 类创建了一个数据集,然后使用 `ChartFactory` 类创建了一个折线图。图表的样式可以通过 `CategoryPlot` 和 `LineAndShapeRenderer` 类进行设置。最后,使用 `ChartUtilities` 类将图表保存为 PNG 文件。