JFreeChart的简单使用
JFreeChart是JAVA平台上的一个开放的图表绘制类库。它完全使用JAVA语言编写,是为applications, applets, servlets 以及JSP等使用所设计。JFreeChart可生成饼图(pie charts)、柱状图(bar charts)、散点图(scatter plots)、时序图(time series)、甘特图(Gantt charts)等等多种图表,并且可以产生PNG和JPEG格式的输出,还可以与PDF和EXCEL关联。
- 使用JFreeChart先要导入两个包
jcommon-1.0.23.jar
和jfreechart-1.0.19.jar
- 下载地址
代码
- jsp部分
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<%@ page import="org.jfree.chart.ChartFactory" %>
<%@ page import="org.jfree.chart.JFreeChart" %>
<%@ page import="org.jfree.data.category.DefaultCategoryDataset" %>
<%@ page import="org.jfree.chart.plot.PlotOrientation" %>
<%@ page import="org.jfree.chart.entity.StandardEntityCollection" %>
<%@ page import="org.jfree.chart.ChartRenderingInfo" %>
<%@ page import="org.jfree.chart.servlet.ServletUtilities" %>
<%@ page import="org.jfree.data.category.DefaultCategoryDataset"%>
<%@ page import="org.jfree.chart.StandardChartTheme"%>
<%@ page import="java.awt.Font"%>
<%@ page import="younghd.MyDataBase" %>
<%@ page import="java.sql.ResultSet" %>
<%@ page import="java.sql.SQLException" %>
<%@ page import="org.jfree.data.general.DefaultPieDataset" %><%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); //设置主题样式DefaultCategoryDataset dataset1=new DefaultCategoryDataset(); //绘制柱状图的数据结构DefaultPieDataset dpd = new DefaultPieDataset(); //绘制饼状图的数据结构//从数据库中获得数据
//饼状图dpd.setValue(名称, 数量);
//柱状图为dataset1.addValue(数量,名称,月份);MyDataBase db=new MyDataBase();String sql="SELECT * FROM phone.num; ";ResultSet rs= null;try {rs = db.inputSQL(sql);while(rs.next()){int count=rs.getInt(1);String name=rs.getString(2);String month=rs.getString(3);dataset1.addValue(count,name,month);dpd.setValue(name, count);}} catch (SQLException e) {e.printStackTrace();}db.close();//创建柱状图JFreeChart组件的图表对象JFreeChart chart=ChartFactory.createBarChart3D("手机销售情况", //图表标题"季度", //x轴的显示标题"销量(万台)", //y轴的显示标题dataset1, //数据集PlotOrientation.VERTICAL,//图表方向(垂直)true, //是否包含图例false, //是否包含提示false //是否包含URL);ChartRenderingInfo info = new ChartRenderingInfo(new StandardEntityCollection());String fileName=ServletUtilities.saveChartAsPNG(chart,370,240,info,session);String url=request.getContextPath()+"/servlet/DisplayChart?filename="+fileName;//创建饼状图的JFreeChart组件的图标对象JFreeChart chart1 = ChartFactory.createPieChart("手机销售情况的百分比",dpd, true, false, false);String fileName1 = ServletUtilities.saveChartAsPNG(chart1,370,240,session);//ServletUtilities是面向web开发的工具类,返回一个字符串文件名,文件名自动生成,生成好的图片会自动放在服务器(tomcat)的临时文件下(temp)String url1 = request.getContextPath() + "/servlet/DisplayChart?filename=" + fileName1;//根据文件名去临时目录下寻找该图片,这里的/DisplayChart路径要与配置文件里用户自定义的<url-pattern>一致
%><html>
<head><title>绘制柱形图和饼状图</title>
</head>
<body topmargin="0">
<table width="100%" border="0" cellspacing="0" cellpadding="0"><tr><td> <img src="<%=url %>"></td></tr><tr><td> <img src="<%=url1 %>"></td></tr>
</table>
</body>
</html>
web.xml
配置servlet
的路由地址
<servlet><servlet-name>DisplayChart</servlet-name><servlet-class>org.jfree.chart.servlet.DisplayChart</servlet-class></servlet><servlet-mapping><servlet-name>DisplayChart</servlet-name><url-pattern>/servlet/DisplayChart</url-pattern></servlet-mapping>
- 运行结果
JFreeChart的简单使用相关推荐
- 利用JFreeChart生成简单柱状图(Java)
1 package barchartdemo1; 2 3 import <a href="http://lib.csdn.net/base/javaee" class='re ...
- JFreeChart的简单图表的制作------柱形图
最近由于网站项目中要用到报表,之前没有学过,所以今天特地稍微的学习了一下,我用JFreeChart来实现的,JFreeChart网上的资源不是那么的多,因为它的jar包免费提供但是文档确实收费的,下面 ...
- JFreeChart的简单应用及乱码解决
一.JFreeChart介绍: JFreeChart是JAVA平台上的一个开放的图表绘制类库.它完全使用JAVA语言编写,是为applications, applets, servlets 以及JSP ...
- 使用jfreechart来创建一个简单的柱状图
使用jfreechart来创建一个简单的柱状图 代码如下 package com.jfreechart;import java.io.*; import org.jfree.data.category ...
- 使用jfreechart来创建一个简单的饼图
使用jfreechart来创建一个简单的饼图 代码如下 package com.jfreechart;import java.io.*; import org.jfree.data.general.D ...
- 用最简单的方式整合JFreechart和Structs并修改背景色
JFreeChart是何物?熟悉java web 编程的朋友们不会陌生,它是JAVA平台上的一个开放的图表绘制类库.它完全使用JAVA语言编写,是为applications, applet ...
- JFreeChart简单介绍及用法(入门)
(学习留存,如有侵权,请告知,立刻删除!) 1.jfreechart简单介绍以及jar包下载 首先了解JFreeChart是什么,它是JAVA平台上的一个开源报表系统(开放的图表绘制类库),通过它可以 ...
- 报表应用系列——图表JFreeChart: 第 4 章 折线图
双击代码全选 1 2 3 4 5 DefaultCategoryDataset dataset = new DefaultCategoryDataset(); dataset.addValue(100 ...
- Open Flash Chart组件的使用 及 与 jfreechart, FusionCharts 的比较
http://crabdave.javaeye.com/blog/189653 Open Flash Chart组件的使用 简介 OpenFlashChart是一个开源的报表制作组件,该组件能够自动生 ...
- java 柱状图下载_(JFreeChart)Java图表制作
(JFreeChart)Java图表制作软件时一个灵活的设计,很容易扩展,和目标服务器端和客户端应用程序;,支持多种图表类型. 输出类型也是多样化.包括Swing组件.图像文件(包括PNG和JPEG) ...
最新文章
- python进制表示方法_python 16进制表示什么
- openvn客户端连接配置(ubnutu)
- ssh连接服务器出现:ssh: connect to host 192.168.1.107 port 22: Connection refused 的解决方法
- ubuntu 设置分辨率 亲测可用 转载的
- 统计平方和三元组的数目
- 40个经典单片机实验_太经典啦!单片机常用的14个C语言算法(附详细代码)
- Python数据分析、挖掘常用工具
- 三星note8android 9.0,三星S9/S9+计划明天推送安卓9.0正式版、S8/S8+、Note8下周推测试版...
- java rsa密钥转pkcs8_openssl RSA密钥格式PKCS1和PKCS8相互转换
- linux vi恢复文件怎么打开文件,Linux上vi编辑文件非正常退出后文件恢复
- SpringBoot整合MyBatis(七)
- Draco嵌入式AI开发板使用手册V0.1.1
- [人生感悟]在平凡中蜕变,我的2014
- 微信小程序数据数据绑定显示NaN
- 付费入群怎么做_微信群怎么设置付费才可以进入
- 市内移出版本2.0(1、一页显示15条。2、增加控制标志。3、打印表格时绑定的list的优化。4、保存迁出登记信息时根据业务流水号判断增加还是修改。5、统一管理常量)
- 微信语音技术原理_干货 | 2 分钟论文:语音生成表情包背后的技术原理
- 代数与逻辑:作业三 贝叶斯决策
- 如何从R和Gmail发送电子邮件
- 2020 ACM-ICPC澳门区域赛 B Boring Problem 主元法
热门文章
- HTML 标签参考手册:按字母顺序排列 HTML 标签
- python精通 epub_跟老齐学Python:从入门到精通[azw3+epub+mobi][8.59MB]
- CASS 10.1.6 安装教程
- 分组卷积和空洞卷积总结
- HTTP报文-请求方式
- TCP/IP框架总结
- 吴裕雄--天生自然 高等数学学习:函数展开成幂级数
- java和是10的10次方的素数,10的11次方之内相邻两素数的最大差值
- 使用微信企业号发送工资条教程
- 我说CMM2.0之:风险与机会管理