1)使用JFreeChart开发Bar Chart(柱状图)
JFreeChart开发一个柱状图非常简单,大致分以下三步:
步骤1:创建CategoryDataset对象(准备数据)
步骤2:根据Dataset 生成JFreeChart对象,以及做相应的设置
步骤3:将JFreeChart对象输出到文件,Servlet输出流等
CreateJFreeChartBar.java:
package com.moonights.demo.jfreechart;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartUtilities;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.CategoryPlot;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.data.category.CategoryDataset;
import org.jfree.data.general.DatasetUtilities;
//JFreeChart Bar Chart(柱状图)
public class CreateJFreeChartBar {
/**
* 创建JFreeChart Bar Chart(柱状图)
*/
public static void main(String[] args) {
//步骤1:创建CategoryDataset对象(准备数据)
CategoryDataset dataset = createDataset();
//步骤2:根据Dataset 生成JFreeChart对象,以及做相应的设置
JFreeChart freeChart = createChart(dataset);
//步骤3:将JFreeChart对象输出到文件,Servlet输出流等
saveAsFile(freeChart, "c:\\jfreechart\\bar.png", 500, 400);
}
//保存为文件
public static void saveAsFile(JFreeChart chart, String outputPath, int weight, int height) {
FileOutputStream out = null;
try {
File outFile = new File(outputPath);
if (!outFile.getParentFile().exists()) {
outFile.getParentFile().mkdirs();
}
out = new FileOutputStream(outputPath);
//保存为PNG文件
ChartUtilities.writeChartAsPNG(out, chart, 300, 200);
//保存为JPEG文件
//ChartUtilities.writeChartAsJPEG(out, chart, 500, 400);
out.flush();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (out != null) {
try {
out.close();
} catch (IOException e) {
//do nothing
}
}
}
}
//根据CategoryDataset生成JFreeChart对象
public static JFreeChart createChart(CategoryDataset categoryDataset) {
JFreeChart jfreechart = ChartFactory.createBarChart("Bar Chart Demo", //标题
"产品", //categoryAxisLabel (category轴,横轴,X轴的标签)
"数量", //valueAxisLabel(value轴,纵轴,Y轴的标签)
categoryDataset, // dataset
PlotOrientation.VERTICAL,
true, // legend
false, // tooltips
false); // URLs
//以下的设置可以由用户定制,也可以省略
CategoryPlot plot = (CategoryPlot) jfreechart.getPlot();
//背景色 透明度
plot.setBackgroundAlpha(0.5f);
//前景色 透明度
plot.setForegroundAlpha(0.5f);
//其它设置可以参考 CategoryPlot
return jfreechart;
}
/**
* 创建CategoryDataset对象
*
*/
public static CategoryDataset createDataset() {
String []rowKeys = {"One", "Two", "Three"};
String []colKeys = {"1987", "1997", "2007"};
double [][] data = {
{50, 20, 30},
{20, 10D, 40D},
{40, 30.0008D, 38.24D},
};
//也可以使用以下代码
//DefaultCategoryDataset categoryDataset = new DefaultCategoryDataset();
//categoryDataset.addValue(10, "rowKey", "colKey");
return DatasetUtilities.createCategoryDataset(rowKeys, colKeys, data);
}
}
执行后,可以发现生成了C:\jfreechart\bar.png文件
分享到:
相关推荐
JFreeChart入门小例子.rar;JFreeChart入门小例子.rar
jfreechart简单实例 jfreechart简单实例 jfreechart简单实例
JFreeChart珍贵资料收藏,自己学习很管用,饼图,柱状图,线条,收藏的各种入门,教程,以及实例。
这是一份关于jfreechart实例的源码,内带数据库和文档,有详细的说明,希望对初学者或者对虽然用到jfreechart实例参考的人有用。
JFreeChart实例,在struts 2中实现柱状图、柱状图3D、饼状图、饼状图3D、折线图、折线图3D
jfreechart入门资料及源包(附简单实例)
JFreeChart可以满足大部分图片创建的需求,实例中主要介绍饼图的做法。
JfreeChart入门 例子,带详细注释
jfreechart实例 你学习起来既轻松有速度 各种图形
JFreechart图表实例.doc 有各个不同表的实例包括 饼状图,柱状图,时间曲线图,线图等。
JFreechart教程与实例,对JFreechart各种图表制作明细说明
JFreeChart入门_-_使用JFreeChart开发Pie(饼状图)
柱状图的dataset 一般是用CatagoryDataset接口(具体实现类是DefaultCategoryDataset),也会用 IntervalXYDataset 接口
JFreeChart实例入门,有代码,main方法。直接看效果
画折线图和饼图的实例。并存为本地文件。 用JFreeChart实现。
使用JFreeChart,必须调用在web-inf目录下导入jfreechart.jar,和jcommon.jar包 使用jfreechart-1.0.13.jar查看图表时中文乱码,降低jfreechart版本ok 显示图表时都可以在获取JfreeChart对象方法中使用3D方式 ...
jFreeChart简单入门例子
Hibernate + RCP + MySQL+ Jfreechart 开发实例 前段时间在教员哪里实习 做了模型 觉得还可以 可直接运行 架包里面都有
jfreechart实例demo,jfreechart实例demo