基本步骤:

(1)建立Dataset。将你所想要显示的数据都放到这个库中。

(2)建立JFreeChart对象。将你的dataset填入到这个对象中。

(3)设置各种JFreeChart的属性和效果。通过它提供的各种方法和接口设置相关的属性。

(4)生成图表,然后按照个人的需求进行执行

注意:最新的版本会有中文无法显示的bug,设置标签的属性后就可以解决问题

条形统计图的基本创建方法

//创建一个条形容统计图
public class JFreeBarChartTest {public static void main(String[] args){// 创建数据集对象DefaultCategoryDataset dataset = new DefaultCategoryDataset();dataset.addValue(20, "小明", "语文");dataset.addValue(60, "小丽", "语文");dataset.addValue(50, "小明", "数学");dataset.addValue(50, "小丽", "数学");// 创建JFreeChart对象JFreeChart barChart =  ChartFactory.createBarChart3D("条形统计图",//标题"姓名",     //x轴标签"分数" ,    //y轴标签dataset,    //数据集PlotOrientation.VERTICAL,//设置Y轴的方向垂直true,       //显示图例true,       //不生成工具true        //不生成连接);//设置字体属性CategoryPlot barPlot = barChart.getCategoryPlot();barChart.getLegend().setItemFont(new Font("宋体", Font.PLAIN, 12)); //底部标签CategoryAxis domainAxis = barPlot.getDomainAxis(); //x轴标签设置domainAxis.setTickLabelFont(new Font("sans-serif", Font.PLAIN, 11));  domainAxis.setLabelFont(new Font("宋体", Font.PLAIN, 12)); ValueAxis rAxis = barPlot.getRangeAxis();        //y轴标签设置rAxis.setTickLabelFont(new Font("sans-serif", Font.PLAIN, 12));  rAxis.setLabelFont(new Font("宋体", Font.PLAIN, 12));  TextTitle textTitle = barChart.getTitle();  //标签设置textTitle.setFont(new Font("宋体", Font.PLAIN, 20));  //以swing的形式输出图表ChartFrame barChartFrameframe = new ChartFrame("barChartFrame",barChart);barChartFrameframe.pack();barChartFrameframe.setVisible(true);}}

运行结果:

饼图的基本创建方法

public class JfreePieChartTest {public static void main(String[] args) {// 创建数据集对象DefaultPieDataset dataset = new DefaultPieDataset();dataset.setValue("男生", 120);dataset.setValue("女生", 200);// 创建JFreeChart对象JFreeChart pieChart = ChartFactory.createPieChart("饼图", // 标题dataset, // 数据集true, true, true);// 设置字体属性PiePlot pieplot = (PiePlot) pieChart.getPlot(); // 通过JFreeChart对象获得plotTextTitle textTitle = pieChart.getTitle(); // 标题设置textTitle.setFont(new Font("宋体", Font.PLAIN, 20));pieChart.getLegend().setItemFont(new Font("宋体", Font.PLAIN, 12));//底部标签字体StandardPieSectionLabelGenerator sp = new StandardPieSectionLabelGenerator("{2}");//{1}表示显示数值, {2}表示显示百分比pieplot.setLabelGenerator(sp);// 设置百分比// 以swing的形式输出图表ChartFrame pieChartFrame = new ChartFrame("peiFrame", pieChart);pieChartFrame.setVisible(true);pieChartFrame.pack();}}

运行结果:

JFreeChart相关推荐

  1. 报表应用系列——图表JFreeChart: 第 4 章 折线图

    双击代码全选 1 2 3 4 5 DefaultCategoryDataset dataset = new DefaultCategoryDataset(); dataset.addValue(100 ...

  2. Java项目:学生考勤管理系统(java+SSM+Poi导出+Easyui+JFreeChart+maven+mysql)

    源码获取:博客首页 "资源" 里下载! 这个项目适合SSM框架的初学者(涉及大量增删改查,很适合初学者)以及对Shiro安全框架和Poi技术感兴趣的同学. 项目功能: 用户管理功能 ...

  3. jfreechart的使用

    jfreechart 简介(百度百科): JFreeChart是JAVA平台上的一个开放的图表绘制类库.它完全使用JAVA语言编写,是为applications, applets, servlets ...

  4. Open Flash Chart组件的使用 及 与 jfreechart, FusionCharts 的比较

    http://crabdave.javaeye.com/blog/189653 Open Flash Chart组件的使用 简介 OpenFlashChart是一个开源的报表制作组件,该组件能够自动生 ...

  5. java 柱状图下载_(JFreeChart)Java图表制作

    (JFreeChart)Java图表制作软件时一个灵活的设计,很容易扩展,和目标服务器端和客户端应用程序;,支持多种图表类型. 输出类型也是多样化.包括Swing组件.图像文件(包括PNG和JPEG) ...

  6. 使用自定义色系美化JfreeChart图表

    JFreeChart所使用的色系生成的图表很难看,笔者深有体会.在使用到JfreeChart的一些项目中经常会有客户提出"能不能由我们自己去设置图表中每个分类的颜色"等等诸如此类的 ...

  7. JFreeChart使用说明一--api介绍

    jfreeChart 中文手册 jfreechartUI JFreeChart类: void setAntiAlias(boolean flag)    字体模糊边界 void setBackgrou ...

  8. 利用JFreeChart绘制股票K线图

    因为工作的需要,接触了一些股票图形绘制类的工作,其中最主要的还是股票K线图的绘制了,如果利用编程语言最底层的图形绘制方法去绘制这类图形,如果对编程语言不是特别熟悉的话,一般是有很大的困难的,通过在网上 ...

  9. struts2 spring jfreechart 整合

    jfreechart和servlet结合使用很简单,只要把图片生成了就能通过servlet显示到画面上去,jfreechart和struts2的结合使用其实看上去也很简单,网上大部分方法都是用< ...

  10. JFreeChart入门

    JFreeChart主要用来各种各样的图表,这些图表包括:饼图.柱状图(普通柱状图以及堆栈柱状图).线图.区域图.分布图.混合图.甘特图以及一些仪表盘等等 (源代码下载) 示例程序运用的jar包: j ...

最新文章

  1. 牛顿:伸向未知量的利爪
  2. nodejs实现继承的简单代码示例
  3. java rect平移_如何在Java Swing中使用鼠标平移图像
  4. VerifyError: Error #1107: ABC 数据已损坏,尝试的读取操作超出范围
  5. ASP.NET中文件上传下载方法集合
  6. SAP R/3系统的R和3分别代表什么含义,负载均衡的实现原理 1
  7. 蒙特卡罗方法求一个三维积分(论坛帮顶)
  8. 如何运用领域驱动设计 - 工作单元
  9. 机器学习笔记:PCA的简单理解以及应用建议
  10. vue大括号里接受一个函数_vue源码探究(第四弹)
  11. SSM项目使用Idea打war包
  12. 全互联+杜比影音ThinkPad X1 Carbon 2019全新上市
  13. R语言金融基础:tidyquant获取数据(股票每日行情)
  14. 传感器实训心得体会_传感器心得体会范文
  15. matlab 小波分析工具
  16. 通过更改cmake的源码实现使用代理的下载命令
  17. Qt多线程1:QThread
  18. ES6 学习内容记录
  19. 开源的C++静态分析工具
  20. 为什么越来越多的人放弃欧美市场,转做Starday日本市场?

热门文章

  1. (FPN)Feature Pyramid Networks for Object Detection
  2. SteamOS:Linux 游戏的现状
  3. 社交电商平台有哪些?社交电商赚钱吗
  4. 服务器端Session和客户端Session, 以及cookie的区别
  5. [python][mediapipe]摄像头人脸检测
  6. scale-up scale-out
  7. linux jad 反编译,使用Jad或JadClipse进行反编译
  8. IINA for MAC 正式版1.0.1 最好用的现代化播放器 软件下载及问题
  9. 安装完了Mindjet MindManager 9,打开提示如下的错误
  10. html播放flv直播源,如何使用flv.js直播(pc端)?