双击代码全选
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. MySQL和Oracle的比较

    可以从以下几个方面来进行比较: (1) 对事务的提交    MySQL默认是自动提交,而Oracle默认不自动提交,需要用户手动提交,需要在写commit;指令或者点击commit按钮(2) 分页查询 ...

  2. HTML5地理定位-Geolocation API

    HTML5提供了一组Geolocation API,来自navigator定位对象的子对象,获取用户的地理位置信息Geolocation API使用方法:1.判断是否支持 navigator.geol ...

  3. flask 开发配置

    flask 开发配置 一:在虚拟机里面安装ubuntu系统.略 二: apt install python3-pip #安装pip, pip3 install --upgrade pip 三: pip ...

  4. web应用无法访问的原因之一以及如何设置数据库编码

    这篇随笔,本是应该是在前天晚上发的,但是因为事情太多,硬生生拖到了现在,当时,在我将web应用部署到服务器上时,在调用接口时,客户端没有任何反应,应该是又出异常了,查看了控制台的异常输出,提示requ ...

  5. eclipse中自动生成注释

    eclipse中自动生成注释 包前缀设置的地方 注释模板设置的地方 Eclipse自动生成方法注释 快捷键 自动生成方法的注释格式,例如 /*** @param str* @return* @thro ...

  6. MySQL Foreign Key

    ntroduction to MySQL foreign key A foreign key is a field in a table that matches another field of a ...

  7. bzoj4504 k个串 kstring 可持久化线段树 (标记永久化)

    [fjwc2015]k个串 kstring [题目描述] 兔子们在玩k个串的游戏.首先,它们拿出了一个长度为n的数字序列,选出其中的一个连续子串,然后统计其子串中所有数字之和(注意这里重复出现的数字只 ...

  8. 变量&字符串

    变量 变量定义规范: # 声明变量: name = "Neo Zheng" # name为变量名(标识符),"Neo Zheng"是变量值. 变量定义规则: 1 ...

  9. POJ 2778 (AC自动机+矩阵乘法)

    POJ 2778 DNA Sequence Problem : 给m个只含有(A,G,C,T)的模式串(m <= 10, len <=10), 询问所有长度为n的只含有(A,G,C,T)的 ...

  10. Inversion 归并求逆元

    bobo has a sequence a 1,a 2,…,a n. He is allowed to swap twoadjacent numbers for no more than k time ...