Python中漂亮的图形和图表

时间:2020-03-05 18:50:16  来源:igfitidea点击:

有哪些可用的库可在Python应用程序中创建漂亮的图表和图形?

解决方案

回答

我们是否研究过适用于Python的ChartDirector?

我不能谈论这一点,但是我已经将ChartDirector用于PHP,这非常好。

回答

NodeBox非常适合创建原始图形。

回答

开罗图

回答

热情的Chaco是另一种选择

回答

我们还可以使用pygooglechart,后者使用Google Chart API。这不是我们始终想要使用的东西,但是如果我们想要少量的简单,良好的图表并且始终在线,尤其是如果无论如何仍在浏览器中显示,则这是一个不错的选择。

回答

我们也可以考虑使用Google图表。

从技术上讲,这不是python API,但是我们可以从python中使用它,它的编码速度相当快,并且结果看起来不错。如果我们碰巧正在在线使用地块,那么这将是一个更好的解决方案。

回答

我是支持CairoPlot的人,对此感到非常自豪。
matplotlib当然很棒,但我相信CairoPlot会更好看。
因此,对于演示文稿和网站,这是一个很好的选择。

今天,我发布了1.1版。如果有兴趣,请在CairoPlot v1.1中进行检查

编辑:在一个漫长而寒冷的冬天之后,CairoPlot再次被开发。在GitHub上检查新版本。

回答

对于交互工作,Matplotlib是成熟的标准。它提供了OO风格的API以及Matlab风格的交互式API。

Chaco是Enthought的人们提供的更现代的绘图库。它使用Enthought的Kiva矢量绘图库,目前仅在OpenGL的情况下可用于Wx和Qt(Matplotlib具有Tk,Qt,Wx,Cocoa的后端,以及许多图像类型,如PDF,EPS,PNG等)。 Chaco的主要优势在于其相对于Matplotlib的速度以及与Enthought的用于交互式应用程序的Traits API的集成。

回答

我们还应该考虑PyCha
http://www.lorenzogil.com/projects/pycha/

回答

如果我们想使用gnuplot进行绘图,则应考虑使用Gnuplot.py。它为gnuplot提供了一个面向对象的界面,还允许我们将命令直接传递给gnuplot。不幸的是,它不再被积极开发。

回答

PLplot是用于创建科学图的跨平台软件包。它们不是很漂亮(引人注目),但看起来足够好。看一些示例(源代码和图片)。

PLplot核心库可用于创建标准的x-y图,半对数图,对数对数图,轮廓图,3D表面图,网格图,条形图和饼图。它可以在Windows(2000,XP和Vista),Linux,Mac OS X和其他Unices上运行。

回答

我是PyOFC2的粉丝:http://btbytes.github.com/pyofc2/

它只是一个软件包,可轻松生成非常漂亮的Open Flash Charts 2所需的JSON数据。在上面的链接上查看示例。

回答

我们没有提到所需的输出格式,但是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,并认为它非常简单。

http://home.gna.org/pychart/

它全部是本机python,没有大量的依赖项。我敢肯定matplotlib很可爱,但是我要下载和安装几天,我只想要一张measley条形图!

它似乎几年没有更新,但是嘿,它起作用了!

回答

请查看WHIFF的Open Flash Chart嵌入
http://aaron.theitroadt.rutgers.edu/myapp/docs/W1100_1600.openFlashCharts
以及嵌入WHIFF的amCharts也http://aaron.theitroadt.rutgers.edu/myapp/amcharts/doc。谢谢。