双击代码全选
1
2
3
4
5
DefaultCategoryDataset dataset = new DefaultCategoryDataset(); 
dataset.addValue(100, "Jan", "Spring Security"); 
dataset.addValue(150, "Jan", "jBPM 4"); 
dataset.addValue(300, "Jan", "Ext JS"); 
dataset.addValue(100, "Jan", "JFreeChart"); 

  如果我们只画一条折线时,确保第二个参数是一致的。

  下一步使用createLineChart创建图表。

双击代码全选
1
2
3
4
5
6
7
8
9
10
JFreeChart chart = ChartFactory.createLineChart( 
  "chart",          // 标题 
  "num",           // 横坐标 
  "type",           // 纵坐标 
  dataset,          // 数据 
  PlotOrientation.VERTICAL,  // 竖直图表 
  true,            // 是否显示legend 
  false,           // 是否显示tooltip 
  false            // 是否使用url链接 
); 

  最后通过ChartUtilities将报表导出成图片。

  图 4.1. 简单折线图

  4.2. 三维折线图

  把createLineChart换成createLineChart3D就可以实现三维折线图。

  图 4.2. 三维折线图

  4.3. 多重折线图

  在CategoryDataset中设置多个分组即可显示为多重折线图。

双击代码全选
1
2
3
4
5
6
7
8
dataset.addValue(100, "Jan", "Spring Security"); 
dataset.addValue(150, "Jan", "jBPM 4"); 
dataset.addValue(300, "Jan", "Ext JS"); 
dataset.addValue(100, "Jan", "JFreeChart"); 
dataset.addValue(200, "Fer", "Spring Security"); 
dataset.addValue(120, "Fer", "jBPM 4"); 
dataset.addValue(240, "Fer", "Ext JS"); 
dataset.addValue(40, "Fer", "JFreeChart"); 

  图 4.3. 多重折线图

  4.4. 设置折线样式

  设置节点的样式。

双击代码全选
1
2
renderer.setBaseShapesVisible(true); 
renderer.setShape(new Ellipse2D.Double(-2, -2, 4, 4)); 

  显示数值

双击代码全选
1
2
renderer.setItemLabelsVisible(true); 
renderer.setBaseItemLabelGenerator(new StandardCategoryItemLabelGenerator()); 

  显示虚线

双击代码全选
1
2
renderer.setStroke(new BasicStroke(1.0f, BasicStroke.CAP_BUTT, 
    BasicStroke.JOIN_MITER, 10.0f, new float[] {10.0f}, 0.0f)); 

  只要会用awt,想要什么样的图形都可以画出来。

  图 4.4. 设置折线样式

报表应用系列——图表JFreeChart: 第 4 章 折线图的更多相关文章

  1. 使用jfreechart生成柱状图、折线图、和饼状图

    JFreeChart是JAVA平台上的一个开放的图表绘制类库.它完全使用JAVA语言编写,是为applications, applets, servlets 以及JSP等使用所设计.下面我就详细介绍如 ...

  2. Android自己定义组件系列【9】——Canvas绘制折线图

    有时候我们在项目中会遇到使用折线图等图形,Android的开源项目中为我们提供了非常多插件,可是非常多时候我们须要依据详细项目自己定义这些图表,这一篇文章我们一起来看看怎样在Android中使用Can ...

  3. Android自定义组件系列【9】——Canvas绘制折线图

    有时候我们在项目中会遇到使用折线图等图形,Android的开源项目中为我们提供了很多插件,但是很多时候我们需要根据具体项目自定义这些图表,这一篇文章我们一起来看看如何在Android中使用Canvas ...

  4. Python图表数据可视化Seaborn:2. 分类数据可视化-分类散点图|分布图(箱型图|小提琴图|LV图表)|统计图(柱状图|折线图)

    1. 分类数据可视化 - 分类散点图 stripplot( ) / swarmplot( ) sns.stripplot(x="day",y="total_bill&qu ...

  5. Python交互图表可视化Bokeh:4. 折线图| 面积图

    折线图与面积图 ① 单线图.多线图② 面积图.堆叠面积图 1. 折线图--单线图 import numpy as np import pandas as pd import matplotlib.py ...

  6. JFreeChart应用(生成折线图)

    1.jar包,jcommon.jar和jfreechart.jar,具体用哪个版本官网去down吧: 还有另外一个jar包,gnujaxp.jar,这个引入之后编译的时候会报错,应该是xsd校验的问题 ...

  7. JFreeChart 图表生成实例(饼图、柱状图、折线图、时序图)

    import java.awt.BasicStroke; import java.awt.Color; import java.io.FileOutputStream; import java.io. ...

  8. JFreeChart在制作折线图

    JFreeChart在制作折线图的时候可以使用两种不同的方式 package Line; import java.awt.Color; import java.awt.Font; import org ...

  9. JfreeChart折线图 CSDN-李鹏飞

    今天公司里分配给我的工作是JfreeChart折线图本人之前也没接触过如今让我们大家一起完毕! 在这个公司,用到了太多的JfreeChart,今天就对折线图作一个总结,希望对大家有点帮助,我这里直接是 ...

随机推荐

  1. BZOJ3545 Peaks 离线处理+线段树合并

    题意: 在Bytemountains有N座山峰,每座山峰有他的高度h_i.有些山峰之间有双向道路相连,共M条路径,每条路径有一个困难值,这个值越大表示越难走,现在有Q组询问,每组询问询问从点v开始只经 ...

  2. phtyon,通过while循环简单的用户名和密码登录

    _username='zhangxin' _password='abc123' _username1='zhaopeng' _password1='abc1234' _username2=" ...

  3. <mongoose>……find与findOne的区别……//

    mongoose中的 find 和 findOne 都是用来查找指定表的数据的 find指的是查找指定表的所有数据,返回的是数组 User.find().then((result)=>{ con ...

  4. web前端开发——css

    一.css介绍 1.css是什么? Cascading Style Sheets缩写,层叠样式表.样式定义如何显示HTML元素,样式通常又会存在于样式表中. 2.为什么需要css? 使HTML页面变得 ...

  5. SQLAlchemy(2):多表操作 & 连接方式及原生SQL

    一对多:ForeignKey multitb_models.py import datetime from sqlalchemy import create_engine # 引入 创建引擎 from ...

  6. 【Eclipse+IntelliJ反编译】Eclipse/IntelliJ IDEA反编译查看源码及注释

    怎么用IDE查看第三方jar包的源码和注释,IntelliJ IDEA自带反编译器,Eclipse装个插件即可,不能看注释就麻烦了,总不能去找API文档吧,现在终于掌握了,下面给出解决方案,供大家参考 ...

  7. Codeforces 629D Babaei and Birthday Cake(树状数组优化dp)

    题意: 线段树做法 分析: 因为每次都是在当前位置的前缀区间查询最大值,所以可以直接用树状数组优化.比线段树快了12ms~ 代码: #include<cstdio> #include< ...

  8. 静态区间第k大(分桶法和平方分割)

    POJ 2104为例 思想: <挑战程序设计竞赛>中介绍的方法. 分桶法:把一排物品或者平面分成桶,每个桶分别维护自己内部的信息,已达到高效计算的目的. 设一共有n个数,每b个分到一个桶里 ...

  9. git一个本地仓库连接多个远程仓库

    前言:由于公司的GIT是内网服务器,而在家工作访问不了内网服务器,由此想把本地仓库连接一个外网的GIT服务器(码云),方便不在公司时开发. 原文 某些场合,一个git项目需要能同时使用两个甚至多个远程 ...

  10. Reorder the Books-HDU5500

    Problem Description dxy has a collection of a series of books called "The Stories of SDOI" ...