gpt4 book ai didi

python - 使用 matplotlib 生成许多图形的最有效方法

转载 作者:太空宇宙 更新时间:2023-11-04 08:41:53 25 4
gpt4 key购买 nike

我需要生成并保存数以千计的散点图,这些散点图本质上是相同的,唯一不同的是“y”变量。最快的方法是什么?

我考虑过创建 Figure 和 Axes 实例,然后像这样在绘图之间简单地清除:

import matplotlib.pyplot as plt
import numpy as np

data = np.random.random((100, 1000))
x = list(range(100))

fig = plt.figure()
ax = fig.add_subplot(111)

for i in range(data.shape[1]):
ax.scatter(x, data[:,i])
fig.savefig("%d.png" % i, dpi=100)
ax.cla()

这仍然需要相当多的时间,那么有更好/更快的方法吗?此示例中的每个图像大约为 15kb,因此我假设写入磁盘不会过多地限制速度。

最佳答案

一种选择是使用多个进程。

import matplotlib.pyplot as plt
import numpy as np
import multiprocessing

data = np.random.random((100, 1000))
x = list(range(100))

fig = plt.figure()
ax = fig.add_subplot(111)

def save_plot(i):
ax.scatter(x, data[:,i])
fig.savefig("%d.png" % i, dpi=100)
ax.cla()

p = multiprocessing.Pool(4)
p.map(save_plot, range(data.shape[1]))

关于python - 使用 matplotlib 生成许多图形的最有效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44165411/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com