JFreeChart与专题地图
更新时间:2023-06-08 14:57:01 阅读量: 实用文档 文档下载
- JfreeChart作图推荐度:
- 相关推荐
jfreechart与专题地图
JFreeChart与专题符号
1、JFreechart剖析 2、专题符号实现
jfreechart与专题地图
1、JFreechart剖析1.1 简介 开源的Java图形开发包,可以实现饼图、柱状图、线图、点图、时序图、 甘特图、股票行情图、混和图 、温度计图、刻度图等常用商用图表 最新版本为JFreeChart 1.0.13,可以到/jfreechart/premium/download.html下载源代码及开发帮助文档 解压jfreechart-1.0.13.zip到指定位置,其中lib是包目录,source是jfreechart 的源码,jfreechart-1.0.13-demo.jar 是例子程序,开发时候加入下面三个jar 包:jfreechart-1.0.13.jar 、jcommon-1.0.13.jar、gnujaxp.jar
jfreechart与专题地图
1、JFreechart剖析1.2 基本结构 JFreeChart常用的API大致可以分为Dataset、Plot、Axis、Renderer、 JFreeChart、URLGenerator、ToolTipGenerator、ChartFactory几大类
jfreechart与专题地图
1、JFreechart剖析1.3 图形对象 JFreeChart对象– JFreeChart 库中最重要的类之一是它本身,名为 JFreeChart – JFreeChart 可以生成很多图形对象,它的工厂类提供了 33 个工厂方法 ( ChartFactory 类 )用于生成不同的图形对象 – 图形对象(JFreeChart) ,由主标题 (Title) ,子标题 (SubTitle) ,图形的绘制结 构(Plot),图例(Legend)等几个主要对象组成 – 每个 JFreeChart 对象只能有 1 个 Title 对象, 1 个 Plot 对象,可以有多 个 SubTitle 对象。 JFreeChart 对象可以进行的操作有:背景的设置(背景颜 色、背景图片、透明度等)、边框的设置(是否可见、笔画、 Paint 等)、渲 染方式的设置、标题对象的设置、子标题对象的增删查操作。
jfreechart与专题地图
1、JFreechart剖析1.3 图形对象的处理 Plot对象– 图形的绘制结构对象。图形对象包含多种不同的Plot对象,每个Plot对象都在实例 化的时候创建。所有的Plot共有的操作有:背景设置、前景透明度设置、无数据存 在情况的设置、放大缩小比例的设置,大部分 Plot 对象还有设置 Datset 、设 置 Renderer 对象操作 – Plot 的具体实现类主要由以下重要对象组成: 渲染对象(Renderer),数据源 (Dataset) ,区域轴(DomainAxis,相当于 x 轴) ,范围轴(RangeAxis,相当于 y 轴) – 不同的 Plot 对象组成方式不尽相同,一般都含有 Datset 对象。饼状图相关 的 Plot 对象(MultiplePiePlot 、 PiePlot 、 PiePlot3D 、 RingPlot)中都不含 有 Renderer 对象、 DomainAxis 对象、 RangeAxis 对象
jfreechart与专题地图
1、JFreechart剖析1.3 图形对象的处理 Dataset接口– 定义了产生图表时所需要的数据结构,有三个主要的子类接口:CategoryDataset、 PieDataset、SeriesDataset – CategoryDataset 接口的实现类维护一个三元组<value,row,col>的列表结构。不同的 实现类中value 的类型不相同。<row,col>唯一确定一个三元组。CategoryDataset的 实现类提供对这个三元组的增删改查操作 – PieDatas
et 接口的实现类维护一个二元组<key,value>的列表结构。Key唯一确定一 个二元组。 PieDataset的实现类提供对这个二元组的增删改查操作。可通过对 CategoryDataset类型的对象指定行或者列转化为一个二元组 – SeriesDataset 接口的实现类维护一种特定数据结构的列表。以TimeSeriesCollection 为例。它维护一个TimeSeries对象列表,提供对该列表的增删查操作。每个 TimeSeries对象维护一个<time,value>列表,提供对该列表的增删改查操作
jfreechart与专题地图
1、JFreechart剖析1.3 图形对象的处理 Renderer对象– 图形的渲染对象。 JFreeChart 提供了两个接 口 CategoryItemRenderer 和 XYItemRenderer 、 1 个抽象类 AbstractRenderer 供具体 的 Renderer 类实现,给出了将近 50 种具体实现类 – Renderer 对象可进行的操作有:对 item label 的默认设置、绘制图形的边框默认设 置、绘制图形的默认设置、以及对指定 item label 的设置、指定绘制图形的设置。 与具体绘制的图形相关的属性都可以通过 Renderer 对象设置 – 不同的 Renderer 的实现类实现了不同的显示方式,在含有 Renderer 对象 的 JFreeChart 对象中, Renderer 对象决定了JFreeChart对象的显示方式。例如:柱 状图的Plot对象中默认的Renderer对象是 BarRenderer 对象,通过设置 Plot 对象的 Renderer对象为 LineAndShapeRenderer ,则柱状图变为线图。使用中一般不需要 显式的实例化一个 Renderer 对象,一般通过 JFreeChart 对象的 Plot 对象调用现有 的 Renderer 对象进行重新设置等操作
jfreechart与专题地图
1、JFreechart剖析1.3 图形对象的处理 Axis对象– JFreeChart 提供了两种类型的坐标轴: CategoryAxis (类别轴)和 ValueAxis (值 轴),RangeAxis 又有 3 个子类: DateAxis (时间轴)、 NumberAxis (数字 轴)、 PeriodAxis (时期轴) – Axis 对象可进行的操作有:坐标轴标题的设置、坐标线的设置(笔画、Paint、是 否可见等)、刻度线的设置(是否可见、笔画、Paint、位于绘图区域的长度、位 于绘图区域外的长度等)、刻度标示的设置(笔画、Paint、字体、与轴的距离 等)、坐标轴范围设置等 – CategoryAxis 对象还可以进行的操作有: 刻度标示间距设置( 最小间距、最大间 距、指定间距)等 – ValueAxis 对象可进行的操作有:轴端设置(显示的图形形状)、范围设置(是否 自动产生范围、自动产生的最小范围、最大范围、指定确定范围、指定范围大小 等)、间隔设置(是否自动产生间隔、指定间隔)等 – DateAxis 对象还有对时间刻度显示格式的设置操作
jfreechart与专题地图
1、JFreechart剖析1.4 生成图表 图表 建立Dataset。所有的数据都存放在Dataset中的。(创建一个数据源(dataset)来 包含将要在图形中显示的数据) 建立JFreeCha
rt。将dataset中的数据导入到JFreeChart中。(创建一个 JFreeChart 对 象来代表要显示的图形 ) 设置JFreeChart的显示属性。这一步可以省略,使用默认的JFreeChart显示属性 渲染图表。即生成图片 页面图片显示
jfreechart与专题地图
1、JFreechart剖析1.5 示例
jfreechart与专题地图
2、专题符号实现2.1 类结构
jfreechart与专题地图
2、专题符号实现2.1 类结构 TChart类– TChart类为专题符号的抽象基类,定义了符号的共同参数 – JFreechart对各种图表没有抽象出继承关系,只是用一个静态工厂类的静态方法来 生成多种JFreechart对象;专题符号各子类的继承关系如下:
jfreechart与专题地图
2、专题符号实现2.1 类结构 ISymbol接口及ISymbolFactory接口– ISymbol为符号绘制的接口,其方法包含drawSymbol、drawLegend等 – TChart类及其子类实现了ISymbol接口 – 每个chart子类对应一个工厂类,用于生成该类的实例,该工厂类实现了 ISymbolFactory接口 – ISymbolFactory用于生成ISymbol接口,进而调用不同的符号对象生成符号
jfreechart与专题地图
2、专题符号实现2.1 类结构 JThematicChart类– 专题符号的实施类,对应于图集中的一幅插图,包含数据集对象、图例对象、标 注对象等,根据客户端请求读取数据库填充数据集对象,根据系统配置文件初始 化图例对象、标注对象,调用工厂类生成专题符号,并绘制为图片返回客户端
PropertiesUtil p = new PropertiesUtil(); Properties properties=p.getProperties(); String symbolFactory=properties.getProperty(String.valueOf(chartType)); ISymbolFactory iSymbolFactory=(ISymbolFactory) Class.forName(symbolFactory).newInstance(); ISymbol iSymbol=iSymbolFactory.createSymbol();
jfreechart与专题地图
2、专题符号实现2.2 流程 解析客户端请求,获取当前请求图幅、图表类型、时间等参数 根据图表类型调用工厂类生成相应的图表对象 判断当前范围内的符号个数,并读取相应数据装载到Dataset接口 生成在当前范围内的各个JFreechart对象,根据符号定位点坐标绘制成一 幅透明的PNG图片,同时生成map标签,传送到客户端
jfreechart与专题地图
谢谢!
正在阅读:
JFreeChart与专题地图06-08
研究目的和现状。doc04-22
外研版初中英语八年级下Module 10 On the radio知识点练习05-15
气管切开护理常规06-10
大学生暑假社会实践报告09-27
观看动画电影《天气之子》个人心得体会范文03-23
盘县人民医院入出院标准11-27
阅读材料07-04
过程控制工程作业11-23
小学六年级语文上册重点知识点归纳04-16
- 教学能力大赛决赛获奖-教学实施报告-(完整图文版)
- 互联网+数据中心行业分析报告
- 2017上海杨浦区高三一模数学试题及答案
- 招商部差旅接待管理制度(4-25)
- 学生游玩安全注意事项
- 学生信息管理系统(文档模板供参考)
- 叉车门架有限元分析及系统设计
- 2014帮助残疾人志愿者服务情况记录
- 叶绿体中色素的提取和分离实验
- 中国食物成分表2020年最新权威完整改进版
- 推动国土资源领域生态文明建设
- 给水管道冲洗和消毒记录
- 计算机软件专业自我评价
- 高中数学必修1-5知识点归纳
- 2018-2022年中国第五代移动通信技术(5G)产业深度分析及发展前景研究报告发展趋势(目录)
- 生产车间巡查制度
- 2018版中国光热发电行业深度研究报告目录
- (通用)2019年中考数学总复习 第一章 第四节 数的开方与二次根式课件
- 2017_2018学年高中语文第二单元第4课说数课件粤教版
- 上市新药Lumateperone(卢美哌隆)合成检索总结报告
- JFreeChart
- 地图
- 专题
- 基于B/S的在线考试系统的设计与开发
- 农业机械综合试题与答案
- AXF电磁流量计操作说明书
- 2016贵州农村信用社考试题库:公共基础知识模拟题二
- 四年级英语(一起点)下册短语
- 中国传统建筑精典装饰元素——龙凤
- 5-风景区的分区、结构与布局
- 55年授衔的元帅、大将、上将、中将,少将名单及职务
- 普通探头超声引导经皮肝穿刺治疗肝脓肿48例报告
- 职业指导师中高级理论简版(打印版)
- 兴化市第二实验小学六课外阅读练习
- 高中化学必修1双向细目表
- 注册税务师服务收费管理办法
- 《历史学科知识与教学能力》(高级中学)
- 公司管理制度目录
- 电极材料在电火花加工中对加工速度的影响
- 第八章 国际金融服务贸易
- 2012届高三备考化学“好题速递”系列9答案
- 高中英语:必修2模块综合检测题(1)(新人教必修2)
- 福世蓝在日常设备维护中的意义和工艺