由于项目需要在web前端进行可视化的图表展示,所以搜寻了好多js解决方案,国外的有highcharts,fusioncharts,国内的有百度eacharts。经过学习,使用,发现还是highcharts跟高一些。
下面我说一下我的几个考虑点:
- 兼容性,其实技术发展到现在,对于兼容性,各个应该是大差不差,我这里贴一下highcharts的官方兼容性介绍
- 美观程度,我觉得国外的js解决方案比国内的舒服,highcharts,fusioncharts都不错,百度的echarts我个人觉得很糟糕
- 官方doc,百度echarts中文doc容易学习,fusioncharts我觉得挺糟糕的,至少当时我学起来挺吃力的(当然跟能力经验有关),highcharts的个人觉得很棒,其实doc写的结构清晰,语句一针见血说明白问题真的挺重要的,在长期的开发中,我深感其要。在这里多扯一句,比如树插件,我觉得国内的ztree就很棒,至少官方doc就写的很好,易学。国内是有做的好的,ztree就是其一。
- 强大性,这个看需求,比如我之所以更喜欢highcharts,是因为当时业务有个需求是需要自动化生成报告,其中就需要有可视化的图表,但是自动化就决定了不要依赖于前端的请求,但是又需要有图表,解决办法之一就是找一个组件支持数据渲染出图表,最终我找到了jfreecharts,但是还有个思路就是如果服务器端能够也用同一个js方案出图表就可以保证与web端一致的展示效果及代码也能公用部分,后来经过查询发现highcharts就支持,它与phantomJS进行搭配可以不依赖前端请求出图表图片,这点,我发现echarts,fusioncharts都不支持。
以上就是我在真正从事项目开发中的深切体会,总之不断学习,不断总结出自己的一套体系,就连针对某个问题用哪个工具解决,也是如此,我坚信踏雪有痕,在此MARK此文,欢迎拍砖。