在Python应用程序中创建漂亮的图表和图形有哪些可用的库?
答案 0 :(得分:50)
我是支持CairoPlot的人,我很自豪它来到这里。 当然matplotlib很棒,但我相信CairoPlot看起来更好看。 因此,对于演示文稿和网站,这是一个非常好的选择。
今天我发布了1.1版。如有兴趣,请查看CairoPlot v1.1
编辑:经过漫长而寒冷的冬天,CairoPlot正在重新开发。查看GitHub上的新版本。答案 1 :(得分:38)
对于互动工作,Matplotlib是成熟的标准。它提供了OO风格的API以及Matlab风格的交互式API。
Chaco是来自Enthought的人们更现代的绘图库。它使用Enthought的Kiva矢量绘图库,目前仅适用于Wx和Qt与OpenGL(Matplotlib有Tk,Qt,Wx,Cocoa的后端,以及许多图像类型,如PDF,EPS,PNG等)。 Chaco的主要优势在于其相对于Matplotlib的速度以及与交互式应用程序的Enthought's Traits API的集成。
答案 2 :(得分:18)
您还可以使用pygooglechart,它使用Google Chart API。这不是你一直想要使用的东西,但如果你想要一些好的,简单的图表,并且总是在线,特别是如果你在浏览器中显示,那么它是一个不错的选择。 / p>
答案 3 :(得分:15)
您没有提到您需要的输出格式,但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'])
alt text http://i40.tinypic.com/2j677tl.jpg
注意:图像已由图像主机转换为jpg。
答案 4 :(得分:6)
答案 5 :(得分:6)
我使用pychart并认为它非常简单。
它是所有本机python,并没有大量的依赖项。我确定matplotlib很可爱,但我会下载并安装好几天,我只想要一个measley条形图!
它似乎没有在几年内更新,但嘿它有效!
答案 6 :(得分:4)
你有没有看过ChartDirector for Python?
我不能谈论这个,但我使用了ChartDirector for PHP,它非常好。
答案 7 :(得分:4)
NodeBox对于原始图形创建非常棒。
答案 8 :(得分:4)
如果您想使用gnuplot进行投标,则应考虑Gnuplot.py。它为gnuplot提供了面向对象的接口,还允许您将命令直接传递给gnuplot。不幸的是,它已不再被积极开发。
答案 9 :(得分:3)
答案 10 :(得分:3)
你也应该考虑PyCha http://www.lorenzogil.com/projects/pycha/
答案 11 :(得分:3)
我是PyOFC2的粉丝:http://btbytes.github.com/pyofc2/
它只是一个包,可以轻松生成Open Flash Charts 2所需的JSON数据,这些数据非常漂亮。查看上面链接中的示例。
答案 12 :(得分:1)
请查看WHIFF的Open Flash Chart嵌入 http://aaron.oirt.rutgers.edu/myapp/docs/W1100_1600.openFlashCharts 以及为WHIFF嵌入的amCharts http://aaron.oirt.rutgers.edu/myapp/amcharts/doc。感谢。
答案 13 :(得分:0)
您还可以考虑google charts。
从技术上讲,它不是一个python API,但你可以在python中使用它,它的编码速度相当快,而且结果看起来很不错。如果你碰巧在网上使用你的情节,那么这将是一个更好的解决方案。
答案 14 :(得分:0)
PLplot是一个用于创建科学图的跨平台软件包。它们不是很漂亮(引人注目),但它们看起来不错。看看some examples(源代码和图片)。
PLplot核心库可用于创建标准x-y图,半对数图,对数图,等高线图,3D曲面图,网格图,条形图和饼图。它运行在Windows(2000,XP和Vista),Linux,Mac OS X和其他Unices上。