Python 在matplotlib中存储原始数据和处理后的数据以便高效使用

Python 在matplotlib中存储原始数据和处理后的数据以便高效使用,python,storage,Python,Storage,我有一些大型数据集,包括数字数据集和文本数据集,在我学习python和numpy/matplotlib并进行可视化时,我遇到了一个问题:我加载原始数据,应用计算,然后在matplotlib中创建图形。这是一个完整的程序,所以每当我想调整图表图例或使我的图表在视觉上更具吸引力时,我都会冗余且低效地计算相同的数据。我只使用我的数据集的一个小样本,脚本一次运行30分钟 我知道解决方案是运行计算并将输出存储在单独的程序中;然后使用不同的程序生成实际的图形。我的问题是,我不知道如何最好地在程序之间存储处理

我有一些大型数据集,包括数字数据集和文本数据集,在我学习python和numpy/matplotlib并进行可视化时,我遇到了一个问题:我加载原始数据,应用计算,然后在matplotlib中创建图形。这是一个完整的程序,所以每当我想调整图表图例或使我的图表在视觉上更具吸引力时,我都会冗余且低效地计算相同的数据。我只使用我的数据集的一个小样本,脚本一次运行30分钟


我知道解决方案是运行计算并将输出存储在单独的程序中;然后使用不同的程序生成实际的图形。我的问题是,我不知道如何最好地在程序之间存储处理后的数据。我应该创建一个.csv文件,还是有一些合适的结构可以自动以人类可读的格式存储数据?

签出,HDF5库的包装器。它就是为这种事情而设计的。

签出,HDF5库的包装器。它就是为那种东西而设计的。

我只会腌制它们。这非常简单,通常速度足够快,如果使用较新的二进制协议,在空间上也相当有效。确保使用最高可用协议:

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)

我只会腌制它们。这非常简单,通常速度足够快,如果使用较新的二进制协议,在空间上也相当有效。确保使用最高可用协议:

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)

这些屏幕截图看起来类似于matplotlib表格。pytables是否在重用该功能?他们使用matplotlib绘制这些测试结果。它不是pytables本身的一部分。这些屏幕截图看起来类似于matplotlib表。pytables是否在重用该功能?他们使用matplotlib绘制这些测试结果。它不是pytables本身的一部分。