JFreeChart是一个Java开源的图表库,可以创建各种类型的图表,包括折线图、散点图、柱状图等等。JFreeChart的使用非常灵活,可以通过Java代码生成图表,也可以使用JSP等Web技术生成图表。
JSP JFreeChart使用心得与例子
简介
JFreeChart是一个Java开源的图表库,可以创建各种类型的图表,包括折线图、散点图、柱状图等等。JFreeChart的使用非常灵活,可以通过Java代码生成图表,也可以使用JSP等Web技术生成图表。
这篇文章主要介绍使用JSP结合JFreeChart生成图表的方法,并给出两个示例。
实现
引入JFreeChart
在使用JFreeChart前,需要先将JFreeChart的jar包引入项目中。可以从JFreeChart官网下载最新版本的jar包,也可以从Maven仓库中下载。将下载好的jar包放置到项目的classpath中。
生成折线图
首先,我们需要生成数据,并将数据传递给JFreeChart。下面是一个生成随机数据的方法。
private static XYDataset createDataset() {
XYSeries series = new XYSeries("Random Data");
Random r = new Random();
for (int i = 0; i < 10; i++) {
series.add(i, r.nextDouble() * 100);
}
XYSeriesCollection dataset = new XYSeriesCollection();
dataset.addSeries(series);
return dataset;
}
然后,我们需要将数据传递给JFreeChart,并生成图像。
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// create dataset
XYDataset dataset = createDataset();
// create chart
JFreeChart chart = ChartFactory.createXYLineChart(
"Random Data",
"X",
"Y",
dataset,
PlotOrientation.VERTICAL,
true,
true,
false
);
// set response content type
response.setContentType("image/png");
// create output stream
OutputStream out = response.getOutputStream();
// write chart to output stream
ChartUtilities.writeChartAsPNG(out, chart, 400, 300);
// close output stream
out.close();
}
最后,我们可以在JSP页面中使用<img>
标签将生成的图像嵌入到页面中。
<img src="chart" />
生成饼状图
生成饼状图的方法与生成折线图的方法类似。
首先,我们需要生成数据,并将数据传递给JFreeChart。下面是一个生成随机数据的方法。
private static PieDataset createDataset() {
DefaultPieDataset dataset = new DefaultPieDataset();
Random r = new Random();
for (int i = 1; i <= 5; i++) {
dataset.setValue("Category " + i, r.nextInt(100));
}
return dataset;
}
然后,我们需要将数据传递给JFreeChart,并生成图像。
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// create dataset
PieDataset dataset = createDataset();
// create chart
JFreeChart chart = ChartFactory.createPieChart(
"Random Data",
dataset,
true,
true,
false
);
// set response content type
response.setContentType("image/png");
// create output stream
OutputStream out = response.getOutputStream();
// write chart to output stream
ChartUtilities.writeChartAsPNG(out, chart, 400, 300);
// close output stream
out.close();
}
最后,我们可以在JSP页面中使用<img>
标签将生成的图像嵌入到页面中。
<img src="chart" />
总结
通过以上两个示例,我们可以看到JSP结合JFreeChart生成图表非常简单。只需要将数据传递给JFreeChart,并将生成的图表写入输出流即可。有了这个基础,我们可以更加灵活地生成各种类型的图表,并将其嵌入到网页中。
本文标题为:jsp JFreeChart使用心得与例子
基础教程推荐
- SpringCloud hystrix服务降级学习笔记 2023-06-30
- java – Oracle – DB似乎打破了JDBC批量插入 2023-11-04
- java – 如何创建新活动,我可以选择从数据库中添加新项目? 2023-11-05
- java实现录音播放功能 2023-04-06
- Java实现FutureTask的示例详解 2023-03-31
- 运用JSP+ajax实现分类查询功能的实例代码 2023-07-31
- SpringBoot静态资源与首页配置实现原理深入分析 2023-06-10
- SpringBoot深入讲解单元测试与热部署应用 2023-02-05
- Java Apache common-pool对象池介绍 2023-05-19
- Java利用完全二叉树创建大根堆和小根堆 2023-04-06