在同一图形上绘制n个动画生长线图(matplotlib,python)

2024-10-16 17:27:29 发布

您现在位置:Python中文网/ 问答频道 /正文

在matplotlib python中,我尝试在同一个图形上绘制多个动画线条图,每个线条图之间的延迟为1秒

我的上一个问题: How to create a delay between mutiple animations on the same graph (matplotlib, python)

我有一份清单: [10,20,30]、[40,50,60]、[2,3,5]、[200300500]]

我想将列表中的每个元素绘制为同一图形上的动画线条图。动画应绘制第一个列表,然后绘制第二个列表,然后绘制第三个列表,然后绘制第四个列表。它们不应该同时绘制

谢谢

Plot will look like:


Tags: theto图形列表matplotliboncreate绘制
1条回答
网友
1楼 · 发布于 2024-10-16 17:27:29

您可以使用matplotlibs交互模式,如下所示:

import pandas as pd
import matplotlib.pyplot as plt


fig, ax = plt.subplots()

plt.ion()   # set interactive mode
plt.show()
x = np.arange(130, 190, 1)
y = 97.928 * np.exp(- np.exp(-  0.1416 * (x - 146.1)))
z = 96.9684 * np.exp(- np.exp(-0.1530 * (x - 144.4)))
y_z=[y,z]
ax.set_xlim(x[0],x[-1])
ax.set_ylim(min(y[0],z[0]),max(y[-1],z[-1]))

color=['green','red']

k=0
for i in y_z:
    for j in range(len(i)):
        line, = ax.plot(x[:j],i[:j],color=color[k])
        plt.gcf().canvas.draw()
        plt.pause(0.1)
    k=k+1

enter image description here

相关问题 更多 >