有哪些可用的Python库可以创建漂亮的图表和图形?
我是支持CairoPlot的人,很自豪它能够出现在这里。 当然,matplotlib也很棒,但我认为CairoPlot更好看。 所以,在演示和网站上使用它是一个非常好的选择。
今天我发布了1.1版本。如果感兴趣,请在CairoPlot v1.1上查看。
编辑:经过漫长而寒冷的冬季,CairoPlot再次被开发。请在GitHub上查看新版本。
对于交互式工作,Matplotlib 是成熟的标准。它提供了一种面向对象的 API 和类似 Matlab 的交互式 API。
Chaco 是来自 Enthought 公司的更现代的绘图库。它使用 Enthought 的 Kiva 矢量绘图库,目前仅与 Wx 和 Qt 一起使用 OpenGL(Matplotlib 有适用于 Tk、Qt、Wx、Cocoa 和许多图像类型(如 PDF、EPS、PNG 等)的后端)。 Chaco 的主要优点是相对于 Matplotlib 的速度以及其与 Enthought 的 Traits API 集成用于交互应用程序。
你还可以使用pygooglechart,它使用了Google Chart API。这并不是你总想要使用的东西,但如果你想要一些好的,简单的图表,而且总是在线的,特别是如果你正在浏览器中显示,那么这是一个不错的选择。
您没有提及需要的输出格式,但reportlab在创建pdf和位图(例如png)格式的图表方面表现很好。
这里是一个简单的柱状图示例,包括png和pdf格式:
from reportlab.graphics.shapes import Drawing
from reportlab.graphics.charts.barcharts import VerticalBarChart
d = Drawing(300, 200)
chart = VerticalBarChart()
chart.width = 260
chart.height = 160
chart.x = 20
chart.y = 20
chart.data = [[1,2], [3,4]]
chart.categoryAxis.categoryNames = ['foo', 'bar']
chart.valueAxis.valueMin = 0
d.add(chart)
d.save(fnRoot='test', formats=['png', 'pdf'])
替代文字 http://i40.tinypic.com/2j677tl.jpg
注意:该图片已被图像托管平台转换为jpg格式。
我使用了pychart,觉得它非常容易上手。
这是纯Python编写的,没有太多依赖。我相信matplotlib也很好用,但是我不想花费数天时间去下载和安装,我只需要一个简单的条形图!
虽然它已经几年没有更新了,但是它仍然可以正常工作!
你有没有研究过Python的ChartDirector?
我不能对这个发表评论,但我用过ChartDirector for PHP,它非常不错。
pip search plot
并查看结果。我通过这样做发现了 pygal,它看起来很棒。 - Mark E. Haase