/**
* 生成饼图
* @param keys section的名称
* @param values section的值
* @param title 饼图的标题
* @param session
* @return 生成的饼图的文件名
*/
public String createPieChart(List keys, List values ,String title, HttpSession session){
DefaultPieDataset data = new DefaultPieDataset();
if(keys!=null && keys.size()>0 && values!=null && values.size()>0)
for(int i=0;i<keys.size();i++){
Comparable key = (Comparable)keys.get(i);
Number value = (Number)values.get(i);
data.setValue(key, value);
}
PiePlot3D pieplot3d = new PiePlot3D(data);
JFreeChart chart = new JFreeChart("",JFreeChart.DEFAULT_TITLE_FONT, pieplot3d, true);
//设置开始角度
pieplot3d.setStartAngle(150D);
//设置方向为”顺时针方向“
pieplot3d.setDirection(Rotation.CLOCKWISE);
//设置透明度,0.5F为半透明,1为不透明,0为全透明
pieplot3d.setForegroundAlpha(0.5F);
pieplot3d.setNoDataMessage("无数据显示");// 没有数据的时候显示的内容
//pieplot3d.setExplodePercent(arg0, arg1);
pieplot3d.setLabelGenerator(new StandardPieSectionLabelGenerator(
("{0}: ({2})"), NumberFormat.getNumberInstance(),
new DecimalFormat("0.00%")));
chart.setBackgroundPaint(java.awt.Color.white);//可选,设置图片背景色
chart.setTitle(title);//可选,设置图片标题
ChartRenderingInfo info = new ChartRenderingInfo(new StandardEntityCollection());
String filename="";
try {
//500是图片长度,300是图片高度
filename = ServletUtilities.saveChartAsPNG(chart, 500, 300, info, session);
//graphURL = request.getContextPath() + "/DisplayChart?filename=" + filename;
} catch (IOException e) {
e.printStackTrace();
}
return filename;
}
其中new StandardPieSectionLabelGenerator(
("{0}: ({1},{2})"), NumberFormat.getNumberInstance(),
new DecimalFormat("0.00%"))
的("{0}: ({1},{2})")是生成的格式,{0}表示section名,{1}表示section的值,{2}表示百分比。可以自定义。而new DecimalFormat("0.00%")表示小数点后保留两位。
在jsp页面中引用的方法:
<%
String filename=tem.createPieChart(keys,values,"统计图",session);
String graphURL = request.getContextPath() + "/DisplayChart?filename=" + filename;
%>
<img src="<%= graphURL %>" width=500 height=300 border=0 >
分享到:
相关推荐
在IT领域,特别是数据可视化方面,JFreeChart是一款非常受欢迎且功能强大的开源Java图表库,它支持多种类型的图表,如折线图、柱状图、饼图等,为开发者提供了丰富的API来创建高质量的统计图表。本文将详细介绍如何...
接下来,使用`ChartFactory.createPieChart()`方法创建饼图对象。该方法接受四个参数:图表标题、数据集、是否显示图例、是否生成工具提示文本、是否生成URL链接。 ```java import org.jfree.chart.ChartFactory; ...
例如,我们可以使用`ChartFactory.createPieChart()`或`ChartFactory.createRingChart()`来创建饼图和环图。 3. **定义数据源**:在生成图表之前,我们需要准备数据。这通常涉及到创建一个`CategoryDataset`(对于...
在JFreeChart中,我们可以使用`PieChart`类来创建饼图。以下是一个简单的代码示例: ```java import org.jfree.chart.ChartFactory; import org.jfree.chart.JFreeChart; import org.jfree.data.general....
创建饼图的基本步骤如下: 1. 引入JFreeChart和JCommon库。 2. 创建一个`PieDataset`对象,它存储了饼图各部分的数据。数据可以是`DefaultPieDataset`,也可以自定义实现。 3. 使用`PiePlot`类创建一个饼图布局,你...
使用JFreeChart创建饼图的基本步骤如下: - 创建数据集:使用`DefaultPieDataset`类。 - 构建图表:使用`JFreeChart`类。 - 设置图表属性:可以设置图表标题、图例等。 - 显示或导出图表:可以将图表渲染到图像文件...
JFreeChart是一款强大的Java图表库,它允许开发者创建多种类型的图表,包括饼图、柱状图等,并且能够与数据库进行交互,为数据分析和可视化提供便利。在这个MyEclipse项目中,你将找到如何利用JFreeChart来实现这些...
在JFreeChart中,我们可以通过`PieChart`类来创建饼图。首先,我们需要一个`PieDataset`来存储数据,然后用这个数据集创建`PiePlot`对象,并将其设置到`JFreeChart`实例上。最后,我们可以将图表渲染到一个`...
在这个简单的入门文档中,我们将探讨如何使用 JFreeChart 创建饼图和柱状图。 首先,使用 JFreeChart 需要引入两个核心的 JAR 文件:`jcommon-版本号.jar` 和 `jfreechart-版本号.jar`。这两个库可以从 JFreeChart ...
创建饼图时,我们需要提供一个Key-Value对的列表,Key代表类别,Value则代表该类别的值。JFreeChart提供了丰富的定制选项,比如设置标签的方向、颜色、字体,甚至可以添加3D效果。 其次,柱状图是一种常用的统计...
本章节专门讨论了如何使用JFreeChart创建饼图。 **5.2 创建简单的饼图** 介绍了创建简单饼图的基本步骤。 **5.3 部分颜色** 讲解如何设置饼图中各部分的颜色。 **5.4 部分轮廓** 解释了如何设置饼图各部分的...
JFreeChart允许你创建带有百分比标签和详细图例的饼图。你需要创建一个`PieDataset`对象存储数据,然后调用`createPieChart()`方法来生成饼图。 对于折线图,它常用于展示数据随时间的变化趋势。在JFreeChart中,你...
本教程将通过一个简单的示例来介绍如何使用 JFreeChart 创建饼图并添加交互式链接。 **示例说明** 假设我们有针对程序员在北京、上海、广州三地的学历、开发语言和薪金的调查数据。我们的目标是首先用饼图展示...
在Java编程中,JFreeChart库是一个强大的图表绘制工具,它能够帮助开发者创建出多种类型的图表,包括柱状图、饼图等,广泛应用于数据分析和可视化展示。这篇博文中,我们将深入探讨如何使用JFreeChart来创建柱状图和...
JFreeChart是一款强大的Java图形库,它允许开发者创建多种类型的图表,包括饼图、折线图、柱状图、散点图以及更多其他类型的图表。这个资料包包含了JFreeChart的核心库(jfreechart-1.0.16.jar)和其依赖库JCommon...
在JFreeChart中,我们可以使用`PieChart`类来创建饼图。需要定义数据集,通常是`DefaultPieDataset`,然后创建`PiePlot`对象,将数据集设置到饼图上,最后将饼图添加到`JFreeChart`实例中。饼图的各个部分可以通过...
使用JFreeChart创建饼图的基本步骤如下: 1. 创建`PieDataset`:存储每一块的数据,可以使用`DefaultPieDataset`或自定义实现。 2. 创建`JFreeChart`对象:调用`JFreeChart.createPieChart()`方法,传入图表标题和`...
通过本文的讲解,我们对JFreeChart创建饼图的基本流程有了清晰的认识,并了解了一些自定义选项。然而,JFreeChart的功能远不止于此,它还支持更复杂的图表类型和丰富的定制功能。对于更深入的学习,建议查看官方文档...
使用JFreeChart创建饼图,首先需要创建`PieDataset`,将数据以键值对的形式存储。然后,通过`PieChart`类的构造函数,传入数据集、标题以及是否显示百分比等参数,生成饼图。你可以自定义标签、颜色、阴影效果等。 ...