报表应用系列——图表JFreeChart: 第 4 章 折线图
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 章 折线图的更多相关文章
- 使用jfreechart生成柱状图、折线图、和饼状图
JFreeChart是JAVA平台上的一个开放的图表绘制类库.它完全使用JAVA语言编写,是为applications, applets, servlets 以及JSP等使用所设计.下面我就详细介绍如 ...
- Android自己定义组件系列【9】——Canvas绘制折线图
有时候我们在项目中会遇到使用折线图等图形,Android的开源项目中为我们提供了非常多插件,可是非常多时候我们须要依据详细项目自己定义这些图表,这一篇文章我们一起来看看怎样在Android中使用Can ...
- Android自定义组件系列【9】——Canvas绘制折线图
有时候我们在项目中会遇到使用折线图等图形,Android的开源项目中为我们提供了很多插件,但是很多时候我们需要根据具体项目自定义这些图表,这一篇文章我们一起来看看如何在Android中使用Canvas ...
- Python图表数据可视化Seaborn:2. 分类数据可视化-分类散点图|分布图(箱型图|小提琴图|LV图表)|统计图(柱状图|折线图)
1. 分类数据可视化 - 分类散点图 stripplot( ) / swarmplot( ) sns.stripplot(x="day",y="total_bill&qu ...
- Python交互图表可视化Bokeh:4. 折线图| 面积图
折线图与面积图 ① 单线图.多线图② 面积图.堆叠面积图 1. 折线图--单线图 import numpy as np import pandas as pd import matplotlib.py ...
- JFreeChart应用(生成折线图)
1.jar包,jcommon.jar和jfreechart.jar,具体用哪个版本官网去down吧: 还有另外一个jar包,gnujaxp.jar,这个引入之后编译的时候会报错,应该是xsd校验的问题 ...
- JFreeChart 图表生成实例(饼图、柱状图、折线图、时序图)
import java.awt.BasicStroke; import java.awt.Color; import java.io.FileOutputStream; import java.io. ...
- JFreeChart在制作折线图
JFreeChart在制作折线图的时候可以使用两种不同的方式 package Line; import java.awt.Color; import java.awt.Font; import org ...
- JfreeChart折线图 CSDN-李鹏飞
今天公司里分配给我的工作是JfreeChart折线图本人之前也没接触过如今让我们大家一起完毕! 在这个公司,用到了太多的JfreeChart,今天就对折线图作一个总结,希望对大家有点帮助,我这里直接是 ...
随机推荐
- 珂朵莉树(Chtholly Tree)学习笔记
珂朵莉树(Chtholly Tree)学习笔记 珂朵莉树原理 其原理在于运用一颗树(set,treap,splay......)其中要求所有元素有序,并且支持基本的操作(删除,添加,查找......) ...
- [JOYOI] 1051 选课
题目限制 时间限制 内存限制 评测方式 题目来源 1000ms 131072KiB 标准比较器 Local 题目描述 学校实行学分制.每门的必修课都有固定的学分,同时还必须获得相应的选修课程学分.学校 ...
- Java设计模式之策略模式(Strategy Pattern)
简介 策略模式定义了算法族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化独立于使用算法的客户. 组成 1.抽象策略角色(Strategy): 策略类,通常由一个接口或者抽象类实现. 2.具 ...
- C#上位机开发(三)—— 构建SerialAssistant雏形
上一篇简单介绍了C#的一些基本知识,并成功的Hello,World,那么从这篇开始,我们来自己动手写一个串口助手: 1.构思功能 串口助手在单片机开发中经常被用来调试,最基本的功能就是接收功能和发送功 ...
- 63.JPA/Hibernate/Spring Data概念【从零开始学Spring Boot】
[从零开始学习Spirng Boot-常见异常汇总] 事情的起源,无意当中在一个群里看到这么一句描述:"有人么?默默的问一句,现在开发用mybatis还是hibernate还是jpa&quo ...
- 选学霸(codevs 3372)
题目描述 Description 老师想从N名学生中选M人当学霸,但有K对人实力相当,如果实力相当的人中,一部分被选上,另一部分没有,同学们就会抗议.所以老师想请你帮他求出他该选多少学霸,才能既不让同 ...
- mysql用户自定义变量
可以先在用户变量中保存值然后在以后引用它:这样可以将值从一个语句传递到另一个语句.用户变量与连接有关.也就是说,一个客户端定义的变量不能被其它客户端看到或使用.当客户端退出时,该客户端连接的所有变量将 ...
- Discuz! X2.5数据库字典【转载】
DROP TABLE IF EXISTS pre_common_admincp_cmenu; CREATE TABLE pre_common_admincp_cmenu ( `id` SMALLINT ...
- linux 常见名词及命令(六)
查看软件安装位置 : dpkg -L 软件包名字 ubuntu环境的apache相关命令: 查看是否启动:ps -aux | grep httpd 或者 netstat -an | grep :80 ...
- 自定义View实现跟随手指的小球
package com.pingyijinren.test; import android.content.Context; import android.graphics.Canvas; impor ...