我是看到这个链接做的
http://hi.baidu.com/python811022/item/3f01cc25194c0d102b0f1c38
下面是我写的servlet
package com.xiaolu.web.servlet; import java.io.File; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletContext; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.jfree.chart.ChartRenderingInfo; import org.jfree.chart.ChartUtilities; import org.jfree.chart.JFreeChart; import org.jfree.chart.entity.StandardEntityCollection; import org.jfree.chart.labels.StandardPieToolTipGenerator; import org.jfree.chart.plot.PiePlot3D; import org.jfree.data.general.DefaultPieDataset; public class JfreeChartDemo extends HttpServlet{ /** * */ private static final long serialVersionUID = 1L; @Override protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //数据源 DefaultPieDataset data = new DefaultPieDataset(); data.setValue("高中以下",370); data.setValue("高中",1530); data.setValue("大专",5700); data.setValue("本科",8280); data.setValue("硕士",4420); data.setValue("博士",80); //3D饼图 PiePlot3D plot = new PiePlot3D(data); plot.setToolTipGenerator(new StandardPieToolTipGenerator()); JFreeChart chart = new JFreeChart("程序员学历情况调查表", JFreeChart.DEFAULT_TITLE_FONT, plot, true); chart.setBackgroundPaint(java.awt.Color.white);//可选,设置图片背景色 StandardEntityCollection sec = new StandardEntityCollection(); ChartRenderingInfo info = new ChartRenderingInfo(sec); String path = this.getServletContext().getRealPath("/image"); String file = path+"\\chart1.jpg"; ChartUtilities.saveChartAsJPEG(new File(file), chart, 500, 300,info); request.setAttribute("url", file); request.getRequestDispatcher("/index.jsp").forward(request, response); } }
相关推荐
在"jFreeChart生成报表图片"的项目中,我们可以看到一个已经准备好的示例,包含了多种图表类型的实现,帮助开发者快速理解和应用jFreeChart。项目中的柱状图用于比较不同类别的数量或值,饼图则用于显示各部分占整体...
在饼状图中,每个扇区代表数据的一个部分,你可以设置不同的颜色和标签来区分不同的数据项。此外,JFreeChart还支持添加百分比标签,使图表更具解释性。 折线图则常用于展示数据随时间的变化趋势。通过JFreeChart,...
这个资源包包含了使用JFreeChart生成图表的代码示例,以及作者的整理笔记,旨在帮助开发者更好地理解和应用JFreeChart。 首先,JFreeChart的核心功能是生成各种类型的图表,如: 1. **饼形图(Pie Chart)**:饼形...
每个XYSeries对象包含多个数据点,每个数据点包含角度和值两个维度。然后,我们将这两个XYSeries对象添加到XYSeriesCollection对象中,作为图表的数据源。 接下来,我们可以使用ChartFactory的createPolarChart方法...
### Jfreechart动态交叉表的生成与应用 #### 摘要 本文主要探讨了如何在Java与Oracle环境下生成动态交叉表(Crosstab),并分析了其在实际应用中的重要性和具体实施方法。数据库设计时需遵循数据范式的要求以确保...
JFreeChart是一款强大的Java图表库,它允许...在研究这些示例时,注意分析每个代码段的作用,以及它们如何协同工作以生成复杂的图表。同时,查阅JFreeChart的官方文档和社区资源,可以获取更多实用技巧和解决方案。
每个版本都可能包含对旧版本的改进和新功能的添加。例如,`jfreechart-1.0.13.jar` 可能比 `jfreechart-1.0.10.jar` 包含了更多的修复、优化或新的图表类型。在选择使用哪个版本时,开发者通常会根据项目的具体需求...
4. **散点图(Scatter Plot)**:散点图用于表示两个变量之间的关系,每个点代表一个数据点。JFreeChart允许自定义点的形状和大小。 5. **甘特图(Gantt Chart)**:甘特图常用于项目管理,显示任务的开始和结束...
在本例中,数据代表了不同学历层次的程序员数量,每个条目对应一个学历等级,值表示该学历层次的程序员数量。 ```java DefaultPieDataset data = new DefaultPieDataset(); data.setValue("高中以下", 370); data....
开发者可以通过设置 CategoryDataset 来定义数据,然后使用 BarRenderer 渲染这些数据,形成不同宽度的柱子来表示每个类别的数量或值。 **4. 导入与测试** 在 Java 项目中,可以使用 Maven 或 Gradle 这样的构建...
3. 饼图:饼图将整个圆分成多个扇形,每个扇形代表一个数据类别,面积比例表示类别的相对大小,适合显示各部分占整体的比例。 4. 柱状图:与条形图类似,但以垂直条形表示数据,适用于分类数据的可视化。 使用...
例如,我们可以设置背景色、改变字体大小,甚至自定义每个条形的颜色: ```java chart.setBackgroundPaint(Color.white); chart.getTitle().setFont(new Font("Arial", Font.BOLD, 18)); CategoryPlot plot = chart...
使用MVC架构时,模型层负责处理数据,视图层利用JFreeChart生成图表,控制器则协调这两者。 综上所述,JFreeChart是一个功能强大的图表库,适用于各种数据可视化需求。通过熟练掌握其API和配置,开发者可以在Web...
每个条目包含产品名称(s1-s11)和对应的销售数量。 接下来,我们将使用`ChartFactory.createBarChart()`方法创建条形图,然后通过`CategoryPlot`对象设置图表的布局、方向、轴和渲染器。`PlotOrientation.VERTICAL...
- **数据系列颜色**:可以为每个数据系列指定不同的颜色。 - **图例(Legend)**:可设置图例的位置、样式和字体。 - **轴标签**:可以自定义X轴和Y轴的标签,以及它们的显示格式。 - **图例项**:可以控制图例...
首先需要创建一个`JFreeChart`对象,然后使用`ChartFactory`类来生成具体的图表。 #### 5. 饼图(Pie Charts) ##### 5.1 简介 饼图是一种常用的图表类型,用于展示各部分占总体的比例。 ##### 5.2 创建一个简单的...
该库包含了一系列的图表类型,每个类型都有丰富的定制选项,如颜色、字体、样式等,可以满足各种复杂的视觉呈现需求。 2. **图表类型** - **折线图(Line Chart)**:用于展示连续的数据趋势,适合于时间序列分析...
在JFreeChart中,你需要使用`TimeSeriesCollection`作为`XYDataset`,它包含了一系列`TimeSeries`对象,每个系列代表一个变量随时间的变化。通过`JFreeChart.createTimeSeriesChart()`方法可以创建时序图。 4. **...