在同一张图上绘制 n 个动画生长线图(matplotlib,python)
Plot n animated growing line plots on the same graph (matplotlib, python)
我试图在同一张图上绘制多个动画线图,在 matplotlib python 中每个线图之间有 1 秒的延迟。
我之前的问题:
我有一个列表列表:
[[10,20,30],[40,50,60],[2,3,5],[200,300,500]]
我想将列表列表的每个元素绘制为同一张图上的动画线图。动画应该绘制第一个列表,然后绘制第二个列表,然后是第三个列表,然后是第四个列表。它们不应同时绘制。
谢谢
您可以使用 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
我试图在同一张图上绘制多个动画线图,在 matplotlib python 中每个线图之间有 1 秒的延迟。
我之前的问题:
我有一个列表列表: [[10,20,30],[40,50,60],[2,3,5],[200,300,500]]
我想将列表列表的每个元素绘制为同一张图上的动画线图。动画应该绘制第一个列表,然后绘制第二个列表,然后是第三个列表,然后是第四个列表。它们不应同时绘制。
谢谢
您可以使用 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