背景


近期的一个项目中,对数据的统计分析有非常大的要求,这就要求有一款非常强大的报表、图表插件。因此,组长给分了任务。让我们各自去研究不同的图表插件。用了一两天的时间,对java这块的图表插件做了一个简单的研究。java方向的图报表还是有非常多非常多的。比如。在业界颇具口碑的商业插件——ChartDirector、JavaScript图表
JScharts 等。以及开源插件——JFreeChart(源代码免费,文档付费)、JasperReports 等。


现状


随着信息化时代的到来,计算机的应用也越来越广泛,不管是企业还是政府机关,对数据的分析处理能力都是有严格要求的,以往的方式都是手工绘制图报表。来分析数据带来的影响和趋势。然而。图表的出现解放了人们的双手。利用计算机的快速处理能力,依托大数据量,绘制出各种各样的图表,以不同的方式展现出数据的趋势。使得阅读者对以往的数据和未来的趋势一目了然,运筹帷幄。

然而,就眼下来说,在报表方面,国内仅仅有稀疏的几家公司提供了非常好的开发工具;但在图表方面,国内就欠缺非常多了。大部分知名的图表插件都是国外的产品。并且,随着大数据时代的到来,对数据的处理、分析能力要求会更高。而图表、报表的需求也会越来越多。



介绍


在Web开发中,图形和图表是经常使用的数据呈现方式,图表能将枯燥的数据生动的表现出来。

或许你正接手一个Web图表开发项目,却被Web图表开发工具选型的问题困扰着。要么是价格昂贵,要么就是部署麻烦,或者图表效果不尽人意。

那么以下的介绍希望对你有一些帮助。

  • ChartDirector

ChartDirector 是一款商业的图表库,有多种语言的版本号。支持的版本号有有.NET。ASP/COM/VB。JSP/Java,CodeFusion。PHP。Perl,Ruby,C++等。ChartDirector图表工具尤其适合用于Web及嵌入式应用程序开发。

使用它做的图表非常的精细美丽,尽管是商业图表,但其收费并不算贵,当然,假设你不想花钱购买。它也提供了免费版本号,但在生成的图表上会出现logo信息。

只是,网上还是有非常多的破解方法的。非常easy。


ChartDirector 插件使用方便,快捷,灵活,功能强大,交互性强。在Webserver以及嵌入式应用程序开发中,它是一种很理想的工具。拥有丰富的图表图形组件库。

支持多种图表样式,如圆形图表(饼形图),圆环图,柱形图(条形图)。直线图。曲线图,梯形线图,趋势线图。曲线拟合图。线间色图,区域图,泡沫图等等。採用多线程结构,特别应用于具有高性能要求的server端应用程序开发,拥有基于API(应用编程接口)的对象。同意用户控制和定制图表细节,从而设计出用户惬意的图表。


ChartDirector 对中文的支持也是非常不错的,出现的问题非常容易解决,网上都有解决方式。此外,ChartDirector 提供的源代码中,jsp的demo也是比較简单的,你仅仅须要改一下数据,立即就能够呈现出你想要的效果。

并且还备有英文的文档。文档中提供了源代码的说明,对于开发人来说还是非常方便的。就我个人来说。我还是非常喜欢这一款插件的,图形种类繁多,样式美丽,并且上手也非常easy。


watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaGFwcHlsZWU2Njg4/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt=""> 

  • JScharts

JScharts 是一个用来在浏览器上直接绘制图表的JavaScript工具包。支持柱状图,圆饼图以及简单的曲线图。直接将这个库插入网页,然后从 XML 文件或 JavaScript 数组变量调用数据。

JSCharts 的特点是。它不须要不论什么服务端的插件和模块。是纯JavaScript组件。它是一款商业软件,但提供了免费的版本号(含有水印)。

如要删除水印,须要一个域密钥。正常情况下。JScharts是不支持中文的,只是在网上找到一个解决方式,能够试一下,点击这里 。


  

  • JFreeChart

JFreeChart 是一个开源的Java项目,它主要用来开发各种各样的图表,这些图表包含,饼形图、柱状图(普通柱状图以及堆栈柱状图)、线图、区域图、分布图、混合图、甘特图以及一些仪表盘等等。在这些不相同式的图表上能够满足眼下商业系统的要求。


JFreeChart是一种基于Java语言的图表开发技术。能够用于Servlet、JSP、Applet、Java Application 环境中,通过JDBC可动态显示不论什么数据库数据,结合ltext能够输出至PDF文件。

JFreeChart
画出来的图形不够精细。看起来有些模糊。图表的文字边缘、颜色和颜色的分界也比較模糊。

JFreeChart 对中文的支持不是非常好。尽管有字体的解决的方法,但仍然存在问题。它使用的默认字体显示出来的中文会非常模糊。你可能须要改动源码。


 

总结


对照这三款Java图表插件,ChartDirector 提供的图形样式是最多的。也是最美丽的,毕竟是商业软件,对于另外两种还是有一些优势的。尽管免费版本号的图表会有logo信息,只是对于这个网上有解决方式,能够去掉logo。对开发者来说,ChartDirector 提供了非常多的Demo和文档。足够开发者学习和使用了。


JScharts 也提供了一些日经常常使用的图形样式,包含柱状图、饼形图等等。并且它提供的样式也还是不错的。尽管JScharts
不须要不论什么服务端的插件和模块,可是对Web前端的JavaScript有一定的要求。不了解JavaScript的开发人员是没办法使用的。

当然。假设了解JavaScript的话,使用JScharts开发图表还是非常easy的。


JFreeChart 也提供了一些日经常常使用的图形样式。仅仅只是它仅仅支持java语言,在易用性方面还是非常easy的。样式方面也还是能够的。尽管JFreeChart的文档要收费。但好在国内还有非常多人在使用JFreeChart,网上能够找到非常多相关的使用教程。JFreeChart的缺陷就是仅仅适合生成图片,并且文字、图片都不是特别清晰。还须要进行一些调整。



结束语


这里对照了经常使用的三款java图表插件。至于项目中选用那一款插件,这个要视情况而定,首先须要看项目中的需求怎样。其次看项目组成员的基本素养,以及项目的进度、时间等等。

这些都是要考虑的,而不是随随便便的就选择一款插件进行开发。选择插件的目的是为了更好的帮助我们开发。当然。假设你仅仅是学习这几款插件的使用。那么你能够多用一些时间来研究一下,在我看来,这些图表的插件,以后应该会经经常使用到了,仅仅要涉及到大数据,这些东西就避免不了。


JavaWeb图表插件的小研究的更多相关文章

  1. 微信小程序图表插件 - wx-charts

    微信小程序图表插件(wx-charts)基于canvas绘制,体积小巧支持图表类型饼图.线图.柱状图 .区域图等图表图形绘制,目前wx-charts是微信小程序图表插件中比较强大好使的一个. wx-c ...

  2. 基于html5 canvas 的强大图表插件【Chart.js】

    名词解释 Chart.js:是基于html5和canvas的强大图表插件,支持多样的图表形式,柱状线性饼环极地雷达等等: canvas:只兼容到IE9 excanvas.js:强大的第三方兼容插件,可 ...

  3. canvas的Chart图表插件

    今天写页面页面需求到柱状图标,今天介绍一下我所用的Chart.js图表插件 官网:http://www.bootcss.com/p/chart.js/         里面会有下载js文件和中文文档 ...

  4. Echarts图表插件(4.x版本)使用(二、带分类筛选的多个图表/实例化多个ECharts,以关系图/force为例)

    导读 如果想在一个页面里实例化带分类筛选的多个Echarts该怎么做呢? 曾探讨了带分类选择的关系图显示为自定义图片的需求实现,传送门ECharts图表插件(4.x版本)使用(一.关系图force节点 ...

  5. ECharts图表插件(4.x版本)使用(一、关系图force节点显示为自定义图像/图片,带分类选择)

    导读 ECharts,一个使用 JavaScript 实现的开源可视化库,可以流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器(IE8/9/10/11,Chrome,Firefox,Safar ...

  6. flot - jQuery 图表插件(jquery.flot)使用

    Flot是纯Javascript实现的基于jQuery的图表插件,主要支持线状图和柱状图的绘制(通过插件也可以支持饼状图). 特别注意Flot使用的是UTC时间,最好修改flot.js去掉所有的UTC ...

  7. 不错的jQuery图表插件 .

    很多时候我们需要在网页中显示数据统计报表,从而能很直观地了解数据的走向,更好地帮助决策分析.今天就给大家分享几个个人觉得好用的jQuery图表插件,这几个图表插件使用起来非常方便,而且挺灵活的,相信大 ...

  8. 图表插件--jqplot交互演示样例

    简单交互 在之前的学习中,我们已经能够绘制各种类型的图表,也能够给图表加入不同的组件,如标题.图例等等.但这些图表仅仅能用于展示数据,一旦希望对图表有所操作--比方查看数据明细--就显得束手无策了.事 ...

  9. 一款可定制的外国jQuery图表插件jqplot

    jqPlot是一个jQuery绘图插件,可以利用它制作漂亮的线状图和柱状图.jqPlot支持为图表设置各种不同的样式.提供Tooltips,数据点高亮显示等功能. 用法: 1.引入jQuery类库和相 ...

随机推荐

  1. 关于String.concat()方法和StringBuffer.append()方法的学习:方法是如何追加字符到源字符串的

    问题分析: 首先,看看两段代码的运行结果,两段代码分别是: 第一段代码,关于String.concat()方法的测试: public static void main(String[] args) { ...

  2. SQLite取值时的下标与创建表中字段的关系

  3. hdu4597 Play Game(DFS)

    转载请注明出处:http://blog.csdn.net/u012860063 题目链接:http://acm.hdu.edu.cn/showproblem.php? pid=4597 题意 Alic ...

  4. UITabbar的常用属性

    // //设置tabbar的背景颜色 // [self.tabBar setBarTintColor:[UIColor redColor]]; // //设置选中时图片和文字的颜色 // [self. ...

  5. web.xml 中<taglib>报错(转载)

    在web.xml加入taglib <taglib> <taglib-uri>/WEB-INF/tiles.tld</taglib- uri> <taglib- ...

  6. HBase的Snapshots功能介绍

    HBase的Snapshots功能介绍 hbase的snapshot功能还是挺有用的,本文翻译自cloudera的一篇博客,希望对想了解snapshot 的朋友有点作用,如果翻译得不好的地方,请查看原 ...

  7. 我的Python成长之路---第三天---Python基础(12)---2016年1月16日(雾霾)

    四.函数 日常生活中,要完成一件复杂的功能,我们总是习惯把“大功能”分解为多个“小功能”以实现.在编程的世界里,“功能”可称呼为“函数”,因此“函数”其实就是一段实现了某种功能的代码,并且可以供其它代 ...

  8. django 新闻编辑笔记

    url(r'^news_manage/edit/$',views.news_edit,name='edit') url配置 <a href="/management/news_mana ...

  9. Week8(10月28日)

    Part I:提问  =========================== 1. Lazy.Eager.Explicit Loading的关键字是什么? 2. 请比较三种加载方式的性能. Part ...

  10. QT5 动态链接库的创建和使用(QT自己做动态库给自己使用)

    记录一下QT5 动态链接库的创建和使用 在文章的最后有完成的代码供下载 1.创建动态链接库 先新建一个库项目 选择chose进入下一下页面,类型选择共享库,输入一个名称:我输入的是sld 再点击下一步 ...