`
lengchaotian
  • 浏览: 281124 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

JFreechart web示例

阅读更多
JFreechart柱状图在springMVC中的实现

java公共代码

import java.awt.Font;

import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.jfree.chart.ChartFactory;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.axis.CategoryAxis;
import org.jfree.chart.axis.ValueAxis;
import org.jfree.chart.plot.CategoryPlot;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.chart.servlet.ServletUtilities;
import org.jfree.data.category.DefaultCategoryDataset;

/**
* <JFreechart公共类>
* <功能详细描述>
* @author  zwq
* @version  [版本号, 2012-5-30]
* @see  [相关类/方法]
* @since  [产品/模块版本]
*/
public class CreateJFreechartUtil
{
    public String setImages(HttpServletRequest request, HttpServletResponse response)
        throws Exception
    {
        DefaultCategoryDataset dataset = getDataSet();
        JFreeChart chart = ChartFactory.createBarChart3D(
                        "水果产量图", //图表标题
            "水果", //目录轴的显示标签
            "产量", //数值轴的显示标签
            dataset, //数据集
            PlotOrientation.VERTICAL, //图表方向:水平、垂直
            true, //是否显示图例(对于简单的柱状图必须是false)
            false, //是否生成工具
            false //是否生成URL链接
        );
        //解决乱码问题
        setImageFont(chart);
       
        //生成图片
        String filename = ServletUtilities.saveChartAsPNG(chart, 600, 400, null, request.getSession());
       
        ServletContext servlet = request.getServletContext();
       
        //得到功能路径
        String imagePath_area = servlet.getContextPath() + "/servlet/DisplayChart?filename=" + filename;
       
        return imagePath_area;
    }
   
    /**
     * 解决乱码问题
     */
    private void setImageFont(JFreeChart chart)
    {
        CategoryPlot plot = (CategoryPlot)chart.getPlot();
        CategoryAxis domainAxis = plot.getDomainAxis();
        ValueAxis numberaxis = plot.getRangeAxis();
       
        //设置标题文字
        chart.getTitle().setFont(new Font("宋体", Font.BOLD, 12));
       
        //设置X轴坐标上的文字   
        domainAxis.setTickLabelFont(new Font("黑体", Font.PLAIN, 11));
       
        //设置X 轴的标题文字 
        domainAxis.setLabelFont(new Font("宋体", Font.PLAIN, 12));
       
        //设置Y 轴坐标上的文字  
        numberaxis.setTickLabelFont(new Font("sans-serif", Font.PLAIN, 12));
       
        //设置Y 轴的标题文字
        numberaxis.setLabelFont(new Font("黑体", Font.PLAIN, 12));
       
        //设置底部文字
        chart.getLegend().setItemFont(new Font("宋体", Font.PLAIN, 12));
    }
   
    /**
     * 获取一个组合数据集对象
     * @return
     */
    private DefaultCategoryDataset getDataSet()
    {
        DefaultCategoryDataset dataset = new DefaultCategoryDataset();
       
        dataset.addValue(100, "北京", "苹果");
        dataset.addValue(120, "上海", "苹果");
        dataset.addValue(380, "广州", "苹果");
        dataset.addValue(230, "北京", "梨子");
        dataset.addValue(200, "上海", "梨子");
        dataset.addValue(230, "广州", "梨子");
        dataset.addValue(400, "北京", "葡萄");
        dataset.addValue(300, "上海", "葡萄");
        dataset.addValue(500, "广州", "葡萄");
        return dataset;
    }
}

Spring Controller 调用

@RequestMapping("/getAllReportRule")
    public ModelAndView getAllReportRule(HttpServletRequest request, HttpServletResponse response,
        ReportRuleInfo reportRule) throws Exception
    {
        //创建CreateJFreechartUtil对象,调用setImages方法得到图片
        CreateJFreechartUtil createJfreechart = new CreateJFreechartUtil();
        String file = createJfreechart.setImages(request, response);
       
        List<ReportRuleInfo> reportList = reportService.getAllReportRule(reportRule);
        request.setAttribute("reportList", reportList);
        request.setAttribute("report", reportRule);
       
        //把得到的图片放到request范围里面
        request.setAttribute("file", file);
        return new ModelAndView("warning/report_rule_list");
    }

web.xml 配置

<servlet>
<servlet-name>jfreechart</servlet-name>
<servlet-class>org.jfree.chart.servlet.DisplayChart</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>jfreechart</servlet-name>
<url-pattern>/servlet/DisplayChart</url-pattern>
</servlet-mapping>

jsp 显示

<body>
<table width="99%" cellpadding="0" cellspacing="0" border="0"
align="center">
<tr>
<td>
<img alt="abc" src="${file}">
</td>
</tr>
</table>
</body>

  • 大小: 25.9 KB
分享到:
评论
1 楼 布衣凌宇 2014-12-23  
为什么会报java.lang.ClassNotFoundException: org.jfree.data.category.CategoryDataset这个错误呢

相关推荐

    JFreeChart示例

    在"JFreeChart示例"中,我们将会深入探讨如何利用 JFreeChart 创建这些图表,并以Web方式展示它们。 首先,JFreeChart 的核心在于它的灵活性和易用性。开发者可以通过简单的 API 调用来构建复杂的图表,调整颜色、...

    jfreechart 1.0.13 示例源码

    8. **Swing和Web应用**:JFreeChart不仅适用于桌面应用(通过Swing),还可以与Servlet和JSP配合,生成图表并在Web应用中显示。 在"study.JFreeChart.demo"中,你可以找到如何实例化这些图表、配置它们的组件以及...

    Jfreechart封装示例

    这个“JFreeChart封装示例”提供了如何在Java应用程序中有效利用JFreeChart库的简单指导。下面我们将深入探讨JFreeChart的核心功能以及如何在项目中实现这些功能。 1. **JFreeChart简介** JFreeChart是一个开源...

    JfreeChart Demo示例包括所需架包

    在提供的压缩包中,"JFreeChart"很可能包含了JFreeChart库的源码、示例代码和必要的依赖。这些资源可以帮助开发者深入理解JFreeChart的工作原理,以及如何在自己的Java项目中有效地利用它。通过仔细研究和实验这些...

    JFreeChart web报表开发实例

    4. **集成到Web应用**:提供示例代码,展示如何在Servlet或JSP页面中处理图像流并将其发送给客户端。 5. **交互性增强**:讨论如何通过JavaScript或AJAX实现图表的动态更新和用户交互,如点击事件、数据过滤等。 6. ...

    jfreechart学习示例

    以上就是基于JFreeChart的学习示例,涵盖了基本的图表创建、数据绑定、数据库交互以及在Java Web环境中的应用。通过实践这些示例,你将能够熟练掌握JFreeChart的使用,提升你的数据可视化能力。

    jfreechart几个示例

    JFreeChart是一个开源项目,广泛应用于Java应用程序、Web应用、报表和数据可视化中。它提供了丰富的图表类型,并支持自定义颜色、字体、标签以及数据呈现方式。 2. **主要图表类型** - **折线图(Line Chart)**...

    JFreeChart示例 JAVA_JFreeChart的应用 JFreeChart 教程

    而对于Web应用,如基于Tomcat的项目,应将这三个库文件放置于项目的`WEB-INF\LIB`目录下,并在`web.xml`中注册servlet,如下所示: ```xml &lt;servlet-name&gt;DisplayChart &lt;servlet-class&gt;org.jfree.chart.servlet....

    jfreechart的一个web例子

    通过阅读和理解这些示例,你可以更深入地了解如何将 JFreeChart 集成到你的 Web 应用中,创建出各种各样的动态图表,提升数据可视化的质量和用户体验。 总结来说,JFreeChart 是 Java 开发者用于创建高质量图表的...

    使用JFreeChart来创建基于web的图表

    // 配置示例(web.xml) &lt;servlet-name&gt;ChartImageServlet &lt;servlet-class&gt;org.jfree.chart.servlet.ChartImageServlet &lt;servlet-name&gt;ChartImageServlet &lt;url-pattern&gt;/chart ``` 然后,在HTML页面中通过...

    JFreeChart例子工程,web页面展示图片

    "JFreeChartWebDemo"是展示如何在Web环境中利用JFreeChart生成图表的一个示例工程。这个项目可能包含了HTML、Servlet或JSP文件,以及Java代码,它们共同协作将JFreeChart生成的图表以图像的形式在网页上展示出来。...

    JFreeChart Web例子

    本项目"JFreeChart Web例子"提供了一系列示例,涵盖了JFreeChart在Web环境中的各种用法。 首先,我们要了解JFreeChart的基本概念。JFreeChart是一个开源项目,它提供了丰富的API,使得开发者能够方便地生成静态和...

    JFreeChart的一个简单例子

    - 仪表盘开发:在企业级应用或Web应用的仪表盘中,JFreeChart可以用来展示关键性能指标。 - 教育和演示:教学材料或技术演示中,使用JFreeChart制作图表能直观地解释概念。 总之,JFreeChart是Java开发者手中的一...

    jFreeChart示例代码,封装成jsp标签

    **JFreeChart 示例代码封装成 JSP 标签** JFreeChart 是一个强大的 Java 图表库,它提供了各种类型的图表,如柱状图、饼图、线形图、散点图等,适用于报告、数据分析和可视化应用。在这个项目中,开发者已经将 ...

    基于jfreechart-1.0.6的WEB图表开发示例

    ### 基于jfreechart-1.0.6的WEB图表开发示例 #### 一、概述 本文档旨在介绍如何使用jfreechart-1.0.6版本进行Web图表开发,帮助开发者掌握基本及高级图表绘制技巧。JFreeChart是一款强大的开源Java图表库,适用于...

    jfreechart示例

    **JFreeChart 示例详解** JFreeChart 是一个用于Java平台的开源图表库,它提供了丰富的图表类型,包括柱状图、饼图、线形图、散点图、甘特图等,广泛应用于数据分析和可视化展示。这个压缩包文件包含了一些...

    web工程jFreeChart展示导出折线图

    在这个“web工程jFreeChart展示导出折线图”的项目中,我们将探讨如何在IDEA Maven环境下利用JFreeChart生成折线图并在前端展示,以及如何实现图表的导出功能。 ### 1. JFreeChart简介 JFreeChart是一个开源的Java...

    jfreeChart几个简单例子

    2. **Web 示例**:可能包括在 JavaServer Pages (JSP) 或 Servlets 中使用 JFreeChart 的例子。这些示例可能涉及到如何将图表导出为图像文件,然后在网页上显示,或者通过 AJAX 实现动态更新。 3. **数据源和序列化...

    JFreeChartDemo案例的源码

    在Java Web开发中,尤其是在Servlet环境下,JFreeChart 可以帮助开发者在网页上生成各种数据可视化展示,便于用户理解和分析数据。 **一、JFreeChart 概述** 1. **安装与导入**:JFreeChart 通常以 jar 包的形式...

    jfreechart统计图的WEB打照

    用户可以下载这个压缩包,通过阅读源码、运行示例来学习如何从数据库中提取数据,并利用JFreeChart在Web页面上展示这些数据的可视化图表。这有助于提升Web应用的数据展示效果,使得数据分析和决策更为直观和高效。

Global site tag (gtag.js) - Google Analytics