博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JFreeChart画图+jsp页面显示实现统计图
阅读量:6607 次
发布时间:2019-06-24

本文共 3496 字,大约阅读时间需要 11 分钟。

1 开发环境:

1、eclipse(可替换)

2、jfreechart-1.0.19

2 说明:

(1) source目录:为 jfreechart的源码目录;不会的主要看这里。因为他的文档是收费的。

(2) lib目录:为包目录,我们需要关注的包为 jfreechart-1.0.10.jar、 gnujaxp.jar和 jcommon-1.0.13.jar这三个包;

(3)根目录下的 jfreechart-1.0.10-demo.jar是例子程序,大家双击后可看到其中有很多例子的运行结果。

3 JavaWeb开发流程

3.1 导入jar包

将jfreechart-1.0.19/lib下面所有jar包导入到“/WEB-INF/lib”目录下

3.2 修改配置文件

在 web.xml文件中增加如下配置,尽量配置在其他优先级不高的servlet配置前面:

DisplayChart
org.jfree.chart.servlet.DisplayChart
DisplayChart
/DisplayChart

3.3 编写jsp文件

<%@ page language="java" contentType="text/html; charset=UTF-8"    pageEncoding="UTF-8"%>    <%@ page import="org.jfree.data.general.DefaultPieDataset" %><%@ page import="org.jfree.chart.ChartFactory" %><%@ page import="org.jfree.chart.JFreeChart" %><%@ page import="org.jfree.chart.servlet.*" %><%@ page import="org.jfree.chart.StandardChartTheme" %><%@ page import="java.awt.Font" %><%@page import="org.jfree.chart.servlet.ServletUtilities"%><%@ page import="org.jfree.chart.plot.PlotOrientation"%>          <%@ page import="org.jfree.data.category.DefaultCategoryDataset"%> 
数据分析
<% DefaultPieDataset dpd = new DefaultPieDataset(); dpd.setValue("管理人员", 25); dpd.setValue("市场人员", 25); dpd.setValue("开发人员", 45); dpd.setValue("其他人员", 10); //这一段是防止乱码使用的 StandardChartTheme standardChartTheme=new StandardChartTheme("CN"); //创建主题样式 standardChartTheme.setExtraLargeFont(new Font("隶书",Font.BOLD,20)); //设置标题字体 standardChartTheme.setRegularFont(new Font("宋书",Font.PLAIN,15)); //设置图例的字体 standardChartTheme.setLargeFont(new Font("宋书",Font.PLAIN,15)); //设置轴向的字体 ChartFactory.setChartTheme(standardChartTheme); //应用主题样式 JFreeChart chart = ChartFactory.createPieChart("某公司组织结构图",dpd, true, false, false); String fileName = ServletUtilities.saveChartAsPNG(chart,800,600,session); //ServletUtilities是面向web开发的工具类,返回一个字符串文件名,文件名自动生成,生成好的图片会自动放在服务器(tomcat)的临时文件下(temp) String url = request.getContextPath() + "/DisplayChart?filename=" + fileName; //根据文件名去临时目录下寻找该图片,这里的/DisplayChart路径要与配置文件里用户自定义的
一致%>
<% DefaultCategoryDataset dataset = new DefaultCategoryDataset(); dataset.addValue(0.2, "广州", "猪肉"); dataset.addValue(0.4, "广州", "牛肉"); dataset.addValue(0.1, "广州", "鸡肉"); dataset.addValue(0.1, "广州", "鱼肉"); // 创建主题样式 StandardChartTheme standardChartTheme1 = new StandardChartTheme("CN"); // 设置标题字体 standardChartTheme1.setExtraLargeFont(new Font("隶书", Font.BOLD, 20)); // 设置图例的字体 standardChartTheme1.setRegularFont(new Font("宋书", Font.PLAIN, 15)); // 设置轴向的字体 standardChartTheme1.setLargeFont(new Font("宋书", Font.PLAIN, 15)); // 应用主题样式 ChartFactory.setChartTheme(standardChartTheme1); JFreeChart chart1 = ChartFactory.createBarChart3D("肉类销量统计图", "肉类", "销量百分比(%)", dataset, PlotOrientation.VERTICAL, false, false, false); String filename = ServletUtilities.saveChartAsPNG(chart1, 1200, 300, null, session); String graphURL = request.getContextPath() + "/DisplayChart?filename=" + filename; System.out.println(graphURL + "\n"+ filename); %>

4 效果图

附jar下载地址:

转载于:https://www.cnblogs.com/qiantao/p/10072863.html

你可能感兴趣的文章
Ansible之playbook的使用
查看>>
ansible模块批量管理
查看>>
redis命令 - GET
查看>>
httpd.conf的基本设置
查看>>
RHEL/Centos7新功能
查看>>
DBA日常工作职责
查看>>
Redis的持久化
查看>>
linux安装NFS服务器学习
查看>>
Planner .NET日历日程控件能给你的应用程序提供多种日历日程功能
查看>>
我的友情链接
查看>>
Linux压力测试
查看>>
JAVA中的线程机制(二)
查看>>
nginx安装与配置2(转载)
查看>>
Linux下Mongodb安装和启动配置
查看>>
沈阳一饭店凌晨爆燃,燃气报警器时刻预防
查看>>
Redis 与 数据库处理数据的两种模式
查看>>
VUE2中axios的使用方法
查看>>
CS 229 notes Supervised Learning
查看>>
2018.10.27-dtoj-3996-Lesson5!(johnny)
查看>>
DataTable转换成json字符串
查看>>