给 matplotlib plot / gif 添加背景图片

我有一个任务多次调用绘图并根据结果创建 gif(请参阅下面的可重现示例)。

我的问题是:我想为这个 gif 添加背景图像。我的猜测是,我必须在附加之前将它添加到循环中的某个位置。

到目前为止我发现了什么,虽然很搞笑并没有真正涉及到我的问题:

在 matplotlib 图上绘制裁剪后的背景图像

import pandas as pd

import numpy as np

import matplotlib.pyplot as plt

import matplotlib.animation as animation

from matplotlib.animation import PillowWriter

import time


rng = np.random.default_rng()

fig = plt.figure(figsize=[10, 9])


ims = []

for i in range(200):

    df = pd.DataFrame(rng.integers(0, 100, size=(100, 2)), columns=list('xy'))

    x = df["x"]

    y = df["y"]

    im = plt.plot(x, y, "b.")

    ims.append(im)

    print(i)

    

    

    


ani = animation.ArtistAnimation(fig, ims, interval=500, blit=True,

                                repeat_delay=1000)


writer = PillowWriter(fps=2)

ani.save("demo2.gif", writer=writer)



眼眸繁星
浏览 112回答 1
1回答

HUH函数

我对此没有太多经验,但我能够显示我事先调用的图像plt.imshow()。demo.gif由于文件大小限制,无法上传。抱歉,示例中使用的图片效果不佳。对不起。import pandas as pdimport numpy as npimport matplotlib.pyplot as pltimport matplotlib.animation as animationfrom matplotlib.animation import PillowWriterimport timeimport matplotlib.image as mpimgrng = np.random.default_rng()fig = plt.figure(figsize=[10, 9])img = mpimg.imread('lena_thumbnail_center_square.jpg')ims = []for i in range(200):    df = pd.DataFrame(rng.integers(0, 100, size=(100, 2)), columns=list('xy'))    x = df["x"]    y = df["y"]    im = plt.plot(x, y, "b.")    ims.append(im)#     print(i)   ani = animation.ArtistAnimation(fig, ims, interval=500, blit=True,                                repeat_delay=1000)plt.imshow(img)writer = PillowWriter(fps=2)ani.save("demo2.gif", writer=writer)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python