Python 将背景图像添加到matplotlib plot/gif

Python 将背景图像添加到matplotlib plot/gif,python,matplotlib,gif,Python,Matplotlib,Gif,我有一个任务,它多次调用绘图并根据结果创建gif(参见下面的可复制示例) 我的问题是:我想在这个gif中添加一个背景图像。我的猜测是,在追加之前,我必须将其添加到循环中的某个地方 到目前为止,我的发现虽然很有趣,但与我的问题并不相关: 资料来源: 我对此没有太多经验,但我能够显示我之前使用plt.imshow()调用的图像。由于文件大小限制,demo.gif无法上载。抱歉,示例中使用的图像不好。对不起 import pandas as pd import numpy as np import

我有一个任务,它多次调用绘图并根据结果创建gif(参见下面的可复制示例)

我的问题是:我想在这个gif中添加一个背景图像。我的猜测是,在追加之前,我必须将其添加到循环中的某个地方

到目前为止,我的发现虽然很有趣,但与我的问题并不相关:

资料来源:


我对此没有太多经验,但我能够显示我之前使用
plt.imshow()调用的图像。由于文件大小限制,
demo.gif
无法上载。抱歉,示例中使用的图像不好。对不起

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
import matplotlib.image as mpimg

rng = 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)

无需道歉!解决方案很好!现在的问题是:下面的图片太大了,不适合我的观点,有什么想法吗?我不确定图片的大小,所以我不能确定,但是
plt.figure(figsize((10,9),dpi=350)
解决问题?抱歉,我认为我的措辞很糟糕:基础映像的尺寸为1000x2000,但我的数据点在0-100之间。我只需要事先将映像调整到该尺寸,它就工作了:)
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
import matplotlib.image as mpimg

rng = 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)