CUDA加速Matplotlib

CUDA加速Matplotlib,matplotlib,gpgpu,Matplotlib,Gpgpu,我试图通过循环浏览数据、绘制数据、将其保存为图像,然后通过FFmpeg将图像序列重建为视频,从而可视化数据的演变 df = pd.DataFrame() df['seconds'] = seconds df['data'] = data for x in range(2000, len(data)): start = x-2000 end = x-1 plt.figure(figsize=[15,20]) plt.subplot(211) pl

我试图通过循环浏览数据、绘制数据、将其保存为图像,然后通过FFmpeg将图像序列重建为视频,从而可视化数据的演变

df = pd.DataFrame()
df['seconds'] = seconds
df['data'] = data

for x in range(2000, len(data)):
    start = x-2000
    end = x-1
    plt.figure(figsize=[15,20])
    
    plt.subplot(211)
    plt.plot(df['data'].iloc[:end])
    plt.title(f"Observation: {end}  Time: {df['seconds'].iloc[end]} seconds", fontsize=30, ha='center')
    plt.xlim(right=len(data))
    plt.xlabel('Observation',fontsize = 20)
    plt.ylabel('Data', fontsize = 20)
    plt.ticklabel_format(useOffset=False)
    plt.grid()

    plt.subplot(212)
    plt.plot(df['data'].iloc[start:end])
    plt.xlabel('Observation',fontsize = 20)
    plt.ylabel('Data', fontsize = 20)
    plt.ticklabel_format(useOffset=False)
    plt.grid()

    plt.savefig(f"dataset/{end}.jpg")
    plt.close()
第一个子图是一个扩展窗口,而第二个子图是一个滚动窗口

len(数据)大约有50万个元素,我预计一次渲染将花费永远的时间,我需要做其中的几个

我有一个Nvidia GPU,不知道这是否可以CUDA加速。Nvidia似乎有一种叫做“Anaconda Accelerate”的东西,但他们的网站有死链接: 所以我不认为这是提供了更多

有没有办法加快MPL绘图的绘图和保存?这将非常有帮助


谢谢

您不需要绘制很多图形,您可以使用matplotlib动画,并保存到电影中。在matplotlib动画中,只需更新数据,无需打印、绘制、保存关闭循环。