Python中的科学绘图

问题描述:

我有一个包含(需要时间的事件,纬度,经度),我需要形象化的大型数据集。我希望生成一个'电影'般的xy图,但是想知道是否有人有更好的主意,或者如果有一种简单的方法可以在Python中执行此操作?Python中的科学绘图

在此先感谢您的帮助, --Leo

得到matplotlib

+0

我以为只做了静态图。有没有一种方法可以制作一系列剧情中的电影? – user100046 2009-05-03 03:33:29

+0

我不确定这是否足够接近您要查找的内容,但these examples会为您提供wx框架中不断更新的呈现。 我怀疑这将有助于了解您正在寻找什么样的动画输出。 – esm 2009-05-03 04:44:12

我曾与Python应用程序生成SVG嵌入动画功能合理的成功,但是这是一个小的元素集比你可能有什么。例如,如果您的数据是关于地震事件的,则会显示一个圆圈,该事件发生时将显示一个圆圈,并且该圆圈的大小与事件的大小相匹配。时间线上的移动指标非常易于添加。 (Opera,其他人也许,Safari不是)显示了很多东西在移动,我发现了灵感。网站上还有很多其他优秀的SVG教程内容。

你可能想看看PyQwt。这是一个与Qt/PyQt一起工作的绘图库。

几个PyQwt示例(在qt4examples目录中)显示了如何创建“移动”/动态更改的图 - 查看CPUplot.pyMapDemo.py,DataDemo.py

我想尝试rpy。来自python的所有R的力量。 http://rpy.sourceforge.net/

rpy太棒了。

退房的CRAN库动画, http://cran.r-project.org/web/packages/animation/index.html

当然,你必须了解一点关于R要做到这一点,但如果你打算做这种事情经常在今后将非常值得你学习。

Enthought的Chaco是专为互动/更新情节。 api等需要一段时间才能使用,但一旦你在那里,这是一个非常棒的框架。

如果您使用Python然后看看MLAB有兴趣的科学绘图:http://code.enthought.com/projects/mayavi/docs/development/html/mayavi/mlab.html

它允许你绘制2D/3D和动画您的数据和图表的质量非常高。

最简单的选择是matplotlib。可能适用于您的两种特定解决方案是:

1)您可以生成一系列图,每个图都是给定时间的快照。这些可以显示为matplotlib中的动态图,其中轴保持不变并且数据四处移动;或者您可以保存一系列图来分隔文件,然后将它们组合起来制作电影(使用单独的应用程序)。在官方的例子中有很多这样的例子。

2)一个简单的散点图,圆圈的颜色随着时间的变化可能适用于您的数据。这很容易。例如见this,它产生这个数字 alt text http://matplotlib.sourceforge.net/plot_directive/mpl_examples/pylab_examples/ellipse_collection.hires.png