2011-02-10 51 views
1

我有些大型数据集(数字和文本)和我正在研究和制定与蟒蛇和numpy的/ matplotlib可视化,我遇到了一个问题:我加载原始数据,应用计算,然后在matplotlib中创建图表。这一切都在一个程序,所以我和冗余低效计算我想调整一个图例或让我的图表,否则更多的视觉吸引力,每次相同的数据。我只使用我的数据集的一小部分样本,脚本一次运行30分钟!存储有效利用原始数据和处理数据matplotlib

我知道该溶液是要运行的计算和存储用于在一个单独的程序使用的输出;然后使用不同的程序来生成实际的图形。我的问题是我不知道如何最好地存储程序之间的处理数据。我应该使.csv文件,还是有可存储在(可能)人类可读的格式自动数据一些合适的结构?

回答

3

退房pytables,对于HDF5 libarary的包装。它是为那种事情设计的。

+0

这些屏幕截图看起来类似于matplotlib表。 pytables是否重用了这个功能? – user17925 2011-02-10 22:07:00

1

我只想咸菜他们。这是非常简单的,通常速度不够快(如果你使用较新的,二进制协议)也是在空间相当有效。确保使用最高可用的协议:

import cPickle 
with open("results.dat", "wb") as stream: 
    cPickle.dump(data, stream, cPickle.HIGHEST_PROTOCOL) 
... 
with open("results.dat", "rb") as stream: 
    data = cPickle.load(stream)