前提要添加依赖的jar包,在你个pom.xml文件中添加如下依赖
1.第一个是jcommon
<!-- https://mvnrepository.com/artifact/jfree/jcommon -->
<dependency>
<groupId>jfree</groupId>
<artifactId>jcommon</artifactId>
<version>1.0.16</version>
</dependency>
2.第二个是jfree
<dependencies>
<!-- https://mvnrepository.com/artifact/jfree/jfreechart -->
<dependency>
<groupId>jfree</groupId>
<artifactId>jfreechart</artifactId>
<version>1.0.13</version>
</dependency>
具体代码实现如下
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartUtilities;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.data.category.DefaultCategoryDataset;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
/**
* 使用JFree绘制柱状图
*/
public class BarChart {
public static void main(String[] args) throws IOException {
//数据集
DefaultCategoryDataset dataset = new DefaultCategoryDataset();
//value row column
dataset.addValue(100, "java", "program language");
dataset.addValue(200, "scala", "program language");
dataset.addValue(300, "r", "program language");
dataset.addValue(400, "python", "program language");
//通过ChartFactory静态方法的createBarChart生成一个JFreeChart 柱状图对象
JFreeChart chart = ChartFactory.createBarChart(
"chart", //标题
"x", //x轴名称
"y", //y轴名称
dataset,//数据集
PlotOrientation.VERTICAL,//使用垂直柱状图
true,//是否使用legend
false,//是否使用tooltip
false); //是否使用url
FileOutputStream fos = null;
try {
fos = new FileOutputStream("target/bar1.png");
//调用ChartUtilities类生成图表
//输出流,表,y轴,x轴长度
ChartUtilities.writeChartAsJPEG(fos, chart, 400, 300);
} catch (FileNotFoundException e) {
e.printStackTrace();
} finally {
System.out.println("图片生成完成");
fos.close();
}
}
}