使用Python或Java,创建图表的最佳方法是什么?
我一直在寻找一些图表库,发现了jFreeChart、Python Google Chart和matplotlib。在这里搜索时,我还发现了CairoPlot。我听说我也可以用OpenOffice来做这个。它的API好用吗?还是说用这些库中的一个会更简单一些?
我对Java比较熟悉,但我读过大部分《Dive Into Python 3》,也用Python做过一些简单的程序。虽然我可能需要花更多时间在Python上,但只要不是特别复杂,我愿意去做。我想自动化一些测试,以便放进我的论文,所以我更关心最终的效果。
目前我在考虑用matplotlib,主要是因为它是唯一一个最近有更新的库,这让我觉得可能会有更多的文档可供参考,因为它得到了持续的支持。我之前也用过jFreeChart做一些测试,感觉还可以。但我希望能找到更好的选择,或者有更多的文档和示例可用。上次我想自定义图表的外观,比如在折线图中改变背景,但因为缺乏示例和文档,没能做到。
2 个回答
谷歌的可视化API非常棒!如果你在网页环境中工作,它的使用会更简单,因为你只需要在HTML中输出一些文本的JavaScript代码,就不用再去请求和渲染图片了。
JFree也有一个叫做Eastwood的工具,它是谷歌图表API的重新实现。如果你不想把数据发送给谷歌,或者需要SSL加密的话,这个工具是个不错的选择。不过我觉得它可能不是最新的,但功能上还是很实用的。
我建议你使用matplotlib,这个工具可以生成高质量的图表,提供了很多图形表现方式,你可以完全掌控你的绘图。而且Python是一种非常方便、简单的语言,非常适合用来自动化测试,这对你想做的事情很实用。matplotlib还有一个庞大的社区,可以提供帮助,还有很多文档和示例供你参考;不过要记住,matplotlib还没有移植到Python 3.x,不知道这对你来说是否重要。
我绝对不推荐使用CairoPlot,因为它已经不再维护了,算是一个玩具项目。