JFreeChart的简单使用
实例1:简单的饼图
public class Test {
public static void main(String[] args) {
//建立默认的饼图
DefaultPieDataset ds=new DefaultPieDataset();
ds.setValue("苹果",6000);
ds.setValue("三星", 9000);
ds.setValue("诺基亚",3200);
ds.setValue("其他", 9000);
//参数:1->标题 2-> 数据集 3->是否显示legend(在图的下方显示颜色块标注) 4->是否显示提示 5->图中是否存在url
JFreeChart chart=ChartFactory.createPieChart("全球手机厂商出货量", ds, true, true, false);
chart.getTitle().setFont(new Font("宋体", Font.BOLD, 30));
chart.getLegend().setItemFont(new Font("宋体", Font.BOLD, 20));
//PiePlot是图中饼图的上一级区域
PiePlot plot=(PiePlot) chart.getPlot();
plot.setLabelFont(new Font("宋体", Font.PLAIN, 20));
//下面的标题是Frame的标题
ChartFrame chartFrame=new ChartFrame("全球手机厂商出货量", chart);
chartFrame.pack();
chartFrame.setVisible(true);
}
}
效果图:

实例2:柱状图
public class Test2 {
public static void main(String[] args) {
DefaultCategoryDataset dataset = new DefaultCategoryDataset();
dataset.setValue(6000, "苹果","苹果");
dataset.setValue(9000, "三星", "三星");
dataset.setValue(3200, "诺基亚", "诺基亚");
dataset.setValue(9000, "其他", "其他");
JFreeChart chart=ChartFactory.createBarChart("全球手机厂商出货量", "手机厂商", "出货量(单位:万台)",dataset,PlotOrientation.VERTICAL,true,true,false);
chart.getTitle().setFont(new Font("宋体", Font.BOLD, 30));
chart.getLegend().setItemFont(new Font("宋体", Font.BOLD, 20));
//CategoryPlot是图中饼图的上一级区域
CategoryPlot plot=chart.getCategoryPlot();
//设置纵坐标-->前者是外围标识(出货量) 后者是坐标标识(手机厂商)
plot.getRangeAxis().setLabelFont(new Font("宋体", Font.BOLD, 20));
plot.getRangeAxis().setTickLabelFont(new Font("宋体", Font.BOLD, 20));
//设置横坐标
plot.getDomainAxis().setLabelFont(new Font("宋体", Font.BOLD, 20));
plot.getDomainAxis().setTickLabelFont(new Font("宋体", Font.BOLD, 20));
ChartFrame chartFrame=new ChartFrame("全球手机厂商出货量", chart);
chartFrame.pack();
chartFrame.setVisible(true);
}
}
效果图

实例3:和Struts2的整合
1.导入strut2和JFreeChart的整合插件jar包
2.Action中为:public JFreeChart getChart(){}
3.Struts.xml文件中增加配置:
<action name="ChartOutputAction" class="chartOutputAction">
<result name="success" type="chart">
<param name="height">400</param>
<param name="width">600</param>
</result>
</action>
4.继承包
<package name="default" namespace="/" extends="struts-default,jfreechart-default">
JFreeChart的简单使用的更多相关文章
- JFreeChart的简单应用及乱码解决
一.JFreeChart介绍: JFreeChart是JAVA平台上的一个开放的图表绘制类库.它完全使用JAVA语言编写,是为applications, applets, servlets 以及JSP ...
- 利用JFreeChart生成简单柱状图(Java)
package barchartdemo1; import <a href="http://lib.csdn.net/base/javaee" class='replace_ ...
- 使用 jfreechart 生成 曲线、柱状图、饼状图、分布图 展示到JSP
虽然现在JS做报表和图形展示已经非常普遍和漂亮了,但是不能忽略有jfreechart 这样一种东西! 这些翻阅资料,在看以前写的示例时发现了关于jfreechart 的简单示例,不管怎样发上来分享一下 ...
- JFreeChart简单用法
需要用到的包 jfreechart-0.9.20.jar,jcommon-0.9.5.jar 创建一般步骤: 1.生成org.jfree.data.DefaultCategoryDataset对象,方 ...
- 【Java EE 学习 74 下】【数据采集系统第六天】【使用Jfreechart的统计图实现】【将JFreechart整合到项目中】
之前说了JFreechart的基本使用方法,包括生成饼图.柱状统计图和折线统计图的方法.现在需要将其整合到数据采集系统中根据调查结果生成三种不同的统计图. 一.统计模型的分析和设计 实现统计图显示的流 ...
- 【Java EE 学习 74 上】【数据采集系统第六天】【使用Jfreechart的统计图实现】【Jfreechart的基本使用方法】
之前已经实现了数据的采集,现在已经有了基本的数据,下一步就需要使用这些数据实现统计图的绘制了.这里使用Jfreechart实现这些统计图的绘制.首先看一下Jfreechart的基本用法,只有知道了它的 ...
- jfreeChart柱状图各属性详细设置
一. 下载与环境配置 此最新版本为 1.0.13 解压jfreechart-1.0.13.zip 将lib目录下的jfreechart-1.0.13.jar .jcommon-1.0.16.jar 复 ...
- JFreeChart 使用一 饼图之高级特性
原文链接:http://www.cnblogs.com/jtmjx/archive/2013/04/23/jfreechart_advantage.html 本文主要讲解JFreeChart中饼图的一 ...
- JfreeChart的使用
前提:导入需要的2个jar文件,jcommon-版本号.jar,jfreechart-版本号.jar.可以去官网下载:http://sourceforge.net/projects/jfreechar ...
随机推荐
- Saltstack入门
一.Salt概述 一个配置管理系统,能够维护预定义状态的远程节点(比如,确保指定的报被安装,指定的服务在运行). 一个分布式远程执行系统,用来在远程节点(可以是单个节点,也可以是任意规则挑选出来的节点 ...
- Java基础知识陷阱(十)
本文发表于本人博客. 上个星期由于时间比较紧所以未能继续写下去,今天再接再厉,专心 + 坚持这样离目标就越来越近了!废话少说说正题,今天我们还是来说说java中比较基础的知识,大家知道编写java程序 ...
- uva11795
这题说的是一个人要消灭 所有的机器人,但是他有他可以消灭的机器人,他可以通过它消灭的机器人的武器去消灭其他的机器人, 给了一个可以消灭的关系的矩阵,计算消灭这些机器人的顺序的不同方案是多少种 , 刚开 ...
- spring AOP的两种代理
本篇记录下spring AOP的两种代理,为下一篇AOP实现做下铺垫. 1.JDK动态代理 2.cglib代理 1.如果目标对象实现了接口,默认情况下会采用JDK的动态代理实现AOP2.如果目标对象 ...
- INNODB锁(2)
在上一篇文章写了锁的基本概述以及行锁的三种形式,这一篇的主要内容如下: 一致性非锁定读 自增长与锁 外键和锁 一致性性非锁定读 一致性非锁定读是InnoDB通过多版本并发控制(MVCC,multi v ...
- PHP curl模拟浏览器采集阿里巴巴的实现代码
<?php set_time_limit(0); function _rand() { $length=26; $chars = "0123456789abcdefghijklmnop ...
- 20145221 《Java程序设计》第三周学习总结
20145221 <Java程序设计>第三周学习总结 教材学习内容总结 第四章部分已在假期完成,详见博客: <Java程序设计>第四章-认识对象 第五章部分 何谓封装 封装实际 ...
- 20145311 《Java程序设计》第十周学习总结
20145311 <Java程序设计>第十周学习总结 教材学习内容总结 网络编程 ·网络编程就是在两个或两个以上的设备(例如计算机)之间传输数据·程序员所作的事情就是把数据发送到指定的位置 ...
- uboot 版本号生成过程
uboot 版本号生成过程 uboot版本号貌似与实际开发不相关,但是我现在遇到一个bug与版本号关联密切. 这个bug与<uboot dm9000驱动故障>基本上是一样的,但是在上一篇博 ...
- 解决方案--duilib中edit获得鼠标焦点后右边框被覆盖
用duilib做了一个登录框,用户名的输入使用的是edit控件. XML中是这样写的: <Edit name="subdomain_edit" tipvalue=" ...