0

我在绘制两个数组或列表 Arr_Particles 和 Arr_Particles2 大小的数据时遇到了一些麻烦。我目前绘制图形以在我启动程序时绘制,然后稍后使用一个经常使用循环调用的函数绘制它。我遇到的问题是我有一个粒子在 pygame 窗口中移动和碰撞的动画,为了在图形上绘制点,我必须暂停绘图,这会在粒子的动画与 graph() 循环运行时暂停. 我想知道有没有办法解决这个问题?

下面的代码:

创建数组和图形的代码:

Arr = []
Arr2 = []

fig = plt.figure()
ax = fig.add_subplot(111)
Ln, = ax.plot(Arr)
Ln1, = ax.plot(Arr2)
ax.set_xlim([0,100])
ax.set_ylim([0,40])
plt.ion()
plt.show()

调用绘图的代码是:

def Graph(Arr, Arr2, Arr_Particles, Arr_Particles2):


 #sets the variable Particle1No = the length of Arr_Particles
    Particle1No = len(Arr_Particles)
    #sets the variable Particle2No = the length of Arr_Particles2
    Particle2No = len(Arr_Particles2)

    #this appends the data from Particle1No to Arr
    Arr.append(Particle1No)
    #this sets ln y data as the data from Arr
    Ln.set_ydata(Arr)
    #this sets ln x data as len of Arr
    Ln.set_xdata(range(len(Arr)))

    #this appends the data from Particle2No to Arr2
    Arr2.append(Particle2No)
    #this sets ln y data as the data from Arr2
    Ln1.set_ydata(Arr2)
    #this sets ln x data as len of Arr2
    Ln1.set_xdata(range(len(Arr2)))

    #pauses plotting ( seems can be 0 or very close) ? it doesnt plot if this is removed either.
    plt.pause(0.1)

任何帮助将不胜感激。

4

0 回答 0