Java 图表类库详解
作者:白衣秀才 发布时间:2021-11-09 00:25:11
摘要
在使用java做后台站点的开发张,图表和报表功能都是不可或缺 的。本文推荐了8款最精彩实用的Java图表应用,大部分图表应用的功能都类似,主要在于界面的美观性和使用的灵活性上有一点高低。
正文
1、JFreeChart - 多功能Java图表类库
JFreeChart是一款基于Java的多功能图表类库,并且是完全开源免费的。JFreeChart可以绘制饼状图、柱状图、散点图、时序图、 甘特图等等多种图表,生成的图表还能以PNG和JPEG格式的图片输出,功能十分强大,更重要的一点是JFreeChart生成的图表操作起来非常流畅, 因此性能也挺不错。
官方网站:http://www.jfree.org/jfreechart/
2、ECharts-Java - Java版ECharts图表库
ECharts是一款功能非常强大的JavaScript图表库,ECharts-Java是ECharts的Java版,用Java代码实现了ECharts的所有图表功能,ECharts中的Json结构也都转换成了Java对象,这样我们使用起来会非常方便,设置也相当灵活。
官方网站:http://Git.oschina.NET/free/ECharts
3、Android图表绘制引擎 - AChartEngine
AChartEngine是一款基于Android的图表绘制引擎,它为Android开发者提供了很多实用的图表绘制工具类,如果你需要在Android应用中添加可视化统计的功能,那么AChartEngine是一个不错的选择。
官方网站:https://code.google.com/p/achartengine/
4、Java快速报表组件- DynamicReports
DynamicReports是一款相当敏捷的Java报表组件,并且是完全免费开源的。和之前介绍的JFreeChart不同,DynamicReports是报表和可视化图表相结合的,可以更加直观地展现和统计数据。DynamicReports是对JasperReports的扩展,完全可以不用专门的设计器来设计。
官方网站:http://www.dynamicreports.org/
5、Android开源图表库 - MPAndroidChart
MPAndroidChart是一款基于Android的开源图表库,MPAndroidChart不仅可以在Android设备上绘制各种统计图 表,而且可以对图表进行拖动和缩放操作,应用起来非常灵活。和前面介绍的AChartEngine相比,MPAndroidChart显得更为轻巧和简 单,MPAndroidChart同样拥有常用的图表类型:线型图、饼图、柱状图和散点图。
官方网站:https://github.com/PhilJay/MPAndroidChart
6、Java图表类库 - jCharts
jCharts是一款基于Java的图表绘制类库,jCharts包含了多种图表格式,包括线型图、饼图、柱形图和点图等。
官方网站:http://jcharts.sourceforge.Net/
7、Java智能图表类库 - JChartLib
JChartLib是一款基于Java的智能图表类库,JChartLib不仅有着漂亮的外观,而且支持图表坐标数值的自动调整,这样我们在图表中 显示数值就比较简单,不用我们计算处理。JChartLib同样支持线型图、柱状图和饼状图,而且可以自定义外观样式。另外图表可直接在 Swing 中使用,可保持为 jpg 和 png 格式图片。
在线演示:http://sourceforge.net/projects/jchartlib/
8、基于SWT的Java图表类库 - SWTChart
SWTChart是一款基于SWT的Java图表类库,也正因为是基于SWT的缘故,SWTChart应用起来非常方便,而且也相当轻巧。
SWTChart支持多种图表类型,包括:线图 、散点图 、堆栈图 、对数标度 、分类轴 、多轴 、柱形图 、面积图 、步骤图 、轴取向 、系列标签等。
官方网站:http://www.swtchart.org/
来源:http://www.cnblogs.com/penglei-it/p/java_charts.html


猜你喜欢
- springboot启动失败的问题springboot版本是1.3.0.M1,连接的mysql版本为8,用spring-boot-start
- 1、概念:MyBatis中的延迟加载,也称为懒加载,是指在进行表的关联查询时,按照设置延迟规则推迟对关联对象的select查询。例如在进行一
- 项目中用到WebView加上进度条放在顶部,让用户知道加载进度情况,可以提高用户体验:效果:布局:<RelativeLayoutand
- 一、XSSFpackage com.yy.demo01;import java.io.FileInputStream;import java
- java Lock接口java.util.concurrent.locks接口Lockpublic interface Loce
- 前言今天记录一个前段时间遇到的一个小问题的解决方法, 跨域!!!相信跨域这个问题, 做开发的或多或少都遇到过, 而且已经有很多博主已经分享了
- 彩色图片转为灰度图的公式如下:gray(i,j) = 0.299 * Red(i,j)+0.587*Green(i,j)+0.114*Blu
- 本文对c#中(int)、int.Parse()、int.TryParse、Convert.ToInt32的区别进行了较为深入的详细分析,对初
- 在上一节,我们已经完成了项目的整体技术架构设计和具体的数据库设计,接下来,我们搭建整体的开发框架。开发工具选用Idea。开发工具只是为了提高
- 最近开发遇到了个问题,app升级的时候,其他手机都能正常升级,下载完安装包,跳到安装页面进行新版本的安装。但却有用户反映,华为P10和华为M
- Idea2020.2创建JavaWeb的方式略有改动,以下做个记录,大家可以参考下,对以后的工作有所帮助!1.创建项目不再是Java Ent
- 一、下载rocketmq对应版本源码修改消息存储路径需要修改rocketmq源码,因为rocketmq取的默认路径是user.home路径,
- 通过MAVEN完成 Mybatis 逆向工程1. POM文件中添加插件在 pom 文件的build 标签中 添加 plugin 插件和 数据
- 我们在想对一个可枚举的对象集合进行去重操作时,一般第一个想到的就是就是Linq的Distinct方法。先定义一个类,然后使用Distinct
- 什么是序列化: 序列化就是把内存中的对象,转换成字节序列(或其他数据传输协议)以便于存储到磁盘(持久化)
- 今天我们来讨论如何在项目开发中优雅地使用RocketMQ。本文分为三部分,第一部分实现SpringBoot与RocketMQ的整合,第二部分
- 我们知道Eclipse创建的工程默认是有个assets文件夹的,但是Android studio默认没有帮我们创建,那么我们就自己创建一个就
- 第一:写Cookies Response.Cookies["UserName"].Value="Guest&q
- 问题描述在使用 Matisse 与 glide 4.0.0 以及 4.0.0 之后的版本过程中,发现通过Matisse 的 wiki 代码调
- 一、问题分析及解决方案1、问题分析上一章我们讲过远程仓储统一管理配置信息,客户端可以通过统一配置服务中心 config server 服务端