`
chenruieye
  • 浏览: 38064 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

jfreechart 报表作图

 
阅读更多

JFreeChart做时间曲线图   

2008-12-16 10:28:06 |  分类: JSP/JAVA技术 | 字号   订阅

<%@ page contentType="text/html;charset=GBK"%>
<%@ page import = "org.jfree.chart.ChartFactory,
                  org.jfree.chart.ChartPanel,
                  org.jfree.chart.JFreeChart,
  org.jfree.chart.servlet.ServletUtilities,
  org.jfree.chart.*,
  org.jfree.chart.StandardLegend,
  org.jfree.chart.axis.DateAxis,
  org.jfree.chart.plot.XYPlot,
  org.jfree.chart.renderer.StandardXYItemRenderer,
  org.jfree.chart.renderer.XYItemRenderer,
  org.jfree.data.XYDataset,
  org.jfree.data.time.Month,
  org.jfree.data.time.TimeSeries,
  org.jfree.data.time.TimeSeriesCollection
"%>
<%

       TimeSeries s1 = new TimeSeries("L&G European Index Trust", Month.class);
       s1.add(new Month(2, 2001), 181.8);
       s1.add(new Month(3, 2001), 167.3);
       s1.add(new Month(4, 2001), 153.8);
       s1.add(new Month(5, 2001), 167.6);
       s1.add(new Month(6, 2001), 158.8);
       s1.add(new Month(7, 2001), 148.3);
       s1.add(new Month(8, 2001), 153.9);
       s1.add(new Month(9, 2001), 142.7);
       s1.add(new Month(10, 2001), 123.2);
       s1.add(new Month(11, 2001), 131.8);
       s1.add(new Month(12, 2001), 139.6);
       s1.add(new Month(1, 2002), 142.9);
       s1.add(new Month(2, 2002), 138.7);
       s1.add(new Month(3, 2002), 137.3);
       s1.add(new Month(4, 2002), 143.9);
       s1.add(new Month(5, 2002), 139.8);
       s1.add(new Month(6, 2002), 137.0);
       s1.add(new Month(7, 2002), 132.8);

       TimeSeries s2 = new TimeSeries("L&G UK Index Trust", Month.class);
       s2.add(new Month(2, 2001), 129.6);
       s2.add(new Month(3, 2001), 123.2);
       s2.add(new Month(4, 2001), 117.2);
       s2.add(new Month(5, 2001), 124.1);
       s2.add(new Month(6, 2001), 122.6);
       s2.add(new Month(7, 2001), 119.2);
       s2.add(new Month(8, 2001), 116.5);
       s2.add(new Month(9, 2001), 112.7);
       s2.add(new Month(10, 2001), 101.5);
       s2.add(new Month(11, 2001), 106.1);
       s2.add(new Month(12, 2001), 110.3);
       s2.add(new Month(1, 2002), 111.7);
       s2.add(new Month(2, 2002), 111.0);
       s2.add(new Month(3, 2002), 109.6);
       s2.add(new Month(4, 2002), 113.2);
       s2.add(new Month(5, 2002), 111.6);
       s2.add(new Month(6, 2002), 108.8);
       s2.add(new Month(7, 2002), 101.6);

       TimeSeriesCollection dataset = new TimeSeriesCollection();
       dataset.addSeries(s1);
       dataset.addSeries(s2);

       dataset.setDomainIsPointsInTime(true);
JFreeChart chart = ChartFactory.createTimeSeriesChart(
           "Legal & General Unit Trust Prices",
           "Date", "Price Per Unit",
           dataset,
           true,
           true,
           false
       );

       //chart.setBackgroundPaint(Color.white);

       StandardLegend sl = (StandardLegend) chart.getLegend();
       sl.setDisplaySeriesShapes(true);

       XYPlot plot = chart.getXYPlot();
      // plot.setBackgroundPaint(Color.lightGray);
       //plot.setDomainGridlinePaint(Color.white);
       //plot.setRangeGridlinePaint(Color.white);
      //plot.setAxisOffset(new Spacer(Spacer.ABSOLUTE, 5.0, 5.0, 5.0, 5.0));
       plot.setDomainCrosshairVisible(true);
       plot.setRangeCrosshairVisible(true);
       
       XYItemRenderer renderer = plot.getRenderer();
       if (renderer instanceof StandardXYItemRenderer) {
           StandardXYItemRenderer rr = (StandardXYItemRenderer) renderer;
           rr.setPlotShapes(true);
           rr.setShapesFilled(true);
       }
       
       DateAxis axis = (DateAxis) plot.getDomainAxis();
       //axis.setDateFormatOverride(new SimpleDateFormat("MM-yyyy"));

 
String filename = ServletUtilities.saveChartAsPNG(chart, 500, 300, null, session);
String graphURL = request.getContextPath() + "/DisplayChart?filename=" + filename;
%>
<img src="<%= graphURL %>" width=500 height=300 border=0 usemap="#<%= filename %>">
分享到:
评论

相关推荐

    JFreeChart报表

    **JFreeChart报表详解** JFreeChart是一款强大的Java图表库,专为开发人员提供各种类型的图表,如直方图、饼图和折线图等,广泛应用于数据分析、数据可视化和报表制作等领域。它是一个开源项目,允许开发者在自己的...

    jfreechart报表

    JFreeChart是一款强大的Java图表库,它为开发者提供了在Java应用程序和Web应用中创建各种高质量图形的能力。这个库被广泛用于数据分析、...通过学习和实践,你可以充分利用其强大功能,创建出专业且引人入胜的报表。

    jfreeChart报表小demo

    **JFreeChart报表小demo** 是一个基于Java的项目,主要展示了如何使用JFreeChart库创建各种图表,如饼图、柱状图和线图,并将这些图表嵌入到PDF文档中,使用了iText库进行PDF处理。这个项目非常适合初学者了解数据...

    ireport jfreechart 报表 录像

    当这两者结合时,开发者能够利用iReport的报表设计功能和JFreeChart的图表渲染能力,制作出具有丰富图表的高质量报表。 在"ireport jfreechart 报表 录像"中,我们可以学习到以下关键知识点: 1. **iReport使用...

    JFreeChart报表小例子

    JFreeChart报表小例子 public class SimpleJFreeChart { public static void main(String[] args){ DefaultPieDataset dpd=new DefaultPieDataset(); //建立一个默认的饼图 dpd.setValue("管理人员", 25); //...

    在RCP中显示JFreeChart报表

    在本文中,我们将深入探讨如何在Eclipse Rich Client Platform (RCP)应用程序中集成和显示JFreeChart报表。JFreeChart是一个强大的Java库,用于创建各种图表类型,如折线图、柱状图、饼图等,而RCP是Eclipse框架的一...

    jfreechart报表处理

    JFreeChart是一款强大的Java图表库,它允许开发者创建多种类型的高质量图表,如柱状图、饼图、线图、散点图、甘特图等,适用于报表和数据分析应用。在这个"jfreechart报表处理"的资源包中,你可能会找到关于如何使用...

    生成 JFreeChart 报表

    **生成 JFreeChart 报表** 在Java编程中,生成美观且功能丰富的图表是一项重要的任务,特别是在数据分析和可视化领域。JFreeChart库是Java社区中广泛使用的开源图表库,它提供了一种简单而强大的方式来创建各种类型...

    jfreechart-作图 所有图形代码示例

    JFreeChart是一款强大的Java图表库,它为开发者提供了丰富的图表类型,如柱状图、饼图、线图、散点图、面积图等,适用于各种数据可视化需求。本示例集合包含了使用JFreeChart创建各种图形的代码实例,旨在帮助开发者...

    JFreeChart报表及其实例

    根目下JFreeChart/有报表教程.doc文件 另外提一下根据我对教程的学习和实践,我认为实例有一个错误: 就是最后生成JFreeChart chart报表对象,原来项目上是执行String filename = ServletUtilities.saveChartAsPNG...

    JFreeChart报表的应用

    将JFreeChart与Struts结合,可以实现动态生成报表,特别是3D柱形图,这种视觉效果丰富的图表类型在展现复杂数据时尤其有用。 首先,我们需要了解JFreeChart的基本用法。JFreeChart提供了丰富的API,允许开发者...

    JFreeChart水晶报表制作

    虽然JFreeChart和水晶报表在功能上有所不同,但它们都可以用来展示数据和分析结果。 在JFreeChart水晶报表制作中,首先我们需要了解JFreeChart的基本用法。JFreeChart的核心是`ChartFactory`类,它提供了创建各种...

    JFreechart报表开发利器实例

    **JFreeChart报表开发利器实例** JFreeChart是一款强大的Java图表库,用于生成高质量的、可定制的2D图表。这个实例集是专为开发者设计的,帮助他们快速理解和掌握如何在自己的应用程序中使用JFreeChart来创建各种...

    JFreeChart生成报表Demo案例

    本示例是关于如何使用JFreeChart在Java环境中创建3D效果的报表的实践教程。 首先,JFreeChart库提供了丰富的图表类型,包括但不限于: 1. **饼图(Pie Chart)**:饼图通过扇形区域的大小来表示数据的比例关系,3D...

    jfreechart报表教程

    这个“jfreechart报表教程”旨在帮助开发者掌握如何利用JFreeChart在Java应用程序中生成专业且美观的数据可视化报告。 在JFreeChart中,首先需要理解基础的图表组件,如CategoryDataset(分类数据集)用于柱状图和...

    java生成报表JFreeChart

    Java生成报表是一个重要的任务,特别是在企业级应用中,数据可视化对于理解和分析业务至关重要。JFreeChart库正是这样一个强大的工具,它允许开发人员在Java应用程序中创建各种图表,如柱状图、饼图和折线图等。这个...

    JFreeChart报表Demo

    【JFreeChart报表Demo】 JFreeChart是一款强大的Java图表库,它允许开发者创建各种静态图表,包括饼图、柱状图、线形图、散点图等,适用于各种数据分析和展示场景。本Demo主要展示了如何利用JFreeChart库在Java项目...

    jfreeChart报表统计

    **jFreeChart报表统计**是基于Java平台的一款强大的图表生成库,它允许开发者创建各种复杂的统计图表,以直观地展示企业信息。jFreeChart库在IT行业中被广泛应用于数据分析、报表制作以及可视化项目中,其丰富的图表...

    jfreechart形成报表文字乱码解决

    在使用JFreeChart库生成报表时,可能会遇到中文字符出现乱码的问题,这通常是由于字体设置不正确导致的。JFreeChart是一个强大的Java库,用于创建各种类型的图表,包括柱状图、饼图、时序图和折线图等。在处理中文...

Global site tag (gtag.js) - Google Analytics