首先,我们需要了解一下jfreechart是什么。jfreechart是一个开源的java图表库,可以帮我们生成各种类型的图表比如折线图、柱状图和饼状图等。以下是使用jfreechart插件将数据展示成饼状图、柱状图和折线图的步骤:
准备工作
在使用jfreechart插件之前,我们需要准备一些工作,如导入相关的依赖和引入相应的类。
依赖导入:
<dependency>
<groupId>jfree</groupId>
<artifactId>jfreechart</artifactId>
<version>1.0.19</version>
</dependency>
引入类:
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.data.general.DefaultPieDataset;
import org.jfree.data.category.DefaultCategoryDataset;
import org.jfree.data.xy.XYSeries;
import org.jfree.data.xy.XYSeriesCollection;
生成饼状图
下面是一个生成饼状图的示例:
DefaultPieDataset dataset = new DefaultPieDataset(); //创建数据集合
dataset.setValue("北京", 23.0); //添加数据
dataset.setValue("上海", 15.0);
dataset.setValue("广州", 12.0);
dataset.setValue("深圳", 10.0);
JFreeChart chart = ChartFactory.createPieChart( //使用ChartFactory生成饼状图
"城市分布", //标题
dataset,
true, //是否显示legend
true, //是否显示tooltip
true); // 是否生成URL链接
ChartPanel panel = new ChartPanel(chart); //创建用于显示图表的面板
使用DefaultPieDataset创建一个数据集合,添加数据之后使用ChartFactory创建一个饼状图对象,并设置标题、是否显示legend、是否显示tooltip和是否生成URL链接。最后使用ChartPanel创建用于显示图表的面板。
生成柱状图
下面是一个生成柱状图的示例:
DefaultCategoryDataset dataset = new DefaultCategoryDataset(); //创建数据集合
dataset.addValue(23.0, "北京", "人数"); //添加数据
dataset.addValue(15.0, "上海", "人数");
dataset.addValue(12.0, "广州", "人数");
dataset.addValue(10.0, "深圳", "人数");
JFreeChart chart = ChartFactory.createBarChart( //使用ChartFactory生成柱状图
"城市分布", //标题
"地区",
"人数",
dataset,
PlotOrientation.VERTICAL,
true, //是否显示legend
true, //是否显示tooltip
false);
ChartPanel panel = new ChartPanel(chart); //创建用于显示图表的面板
使用DefaultCategoryDataset创建一个数据集合,添加数据之后使用ChartFactory创建一个柱状图对象,并设置标题、X轴和Y轴标签名、数据集合、图表的方向(垂直或水平)、是否显示legend和是否显示tooltip。最后使用ChartPanel创建用于显示图表的面板。
生成折线图
下面是一个生成折线图的示例:
XYSeriesCollection dataset = new XYSeriesCollection(); //创建数据集合
XYSeries series1 = new XYSeries("北京"); //添加折线1
series1.add(2000, 20); //添加数据
series1.add(2001, 18);
series1.add(2002, 25);
series1.add(2003, 30);
XYSeries series2 = new XYSeries("上海"); //添加折线2
series2.add(2000, 30); //添加数据
series2.add(2001, 25);
series2.add(2002, 20);
series2.add(2003, 28);
dataset.addSeries(series1); //将折线添加到数据集合中
dataset.addSeries(series2);
JFreeChart chart = ChartFactory.createXYLineChart( //使用ChartFactory生成折线图
"城市分布", //标题
"年份",
"人数",
dataset,
PlotOrientation.VERTICAL,
true, //是否显示legend
true, //是否显示tooltip
false);
ChartPanel panel = new ChartPanel(chart); //创建用于显示图表的面板
使用XYSeriesCollection创建一个数据集合,添加两条折线并添加数据之后使用ChartFactory创建一个折线图对象,并设置标题、X轴和Y轴标签名、数据集合、图表的方向(垂直或水平)、是否显示legend和是否显示tooltip。最后使用ChartPanel创建用于显示图表的面板。
以上就是使用jfreechart插件生成饼状图、柱状图和折线图的完整攻略。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:jfreechart插件将数据展示成饼状图、柱状图和折线图 - Python技术站