Как использовать данные из цикла в графике matplotlib?

#python #matplotlib

#python #matplotlib

Вопрос:

Итак, у меня есть цикл (показан ниже)

Где после его запуска он снова печатает (t, d) до тех пор, пока d = 0 . Как бы мне отобразить все это на графике в matplotlib? Я бы предпочел не помещать каждую точку данных одну за другой для всех значений x и y, и мне было интересно, есть ли способ запустить цикл и отобразить его на графике.

 t = 0
d = 0
v = 0
m = .1
g = -9.8
Ftr = 8
dt = .1
Cd=.5
cA=.1
r=.03
b=Cd*cA*.5*r
while d>=0:
    print (t,d)
    t=t dt
    Ff=-b*v
    if t>3:
        Ftr=0
    Fw=m*g
    Fn=Ftr Fw Ff
    a=Fn/m
    dv=a*dt
    v=dv v
    Dy=v*dt
    d=d Dy
  

Комментарии:

1. вы не хотите хранить записи t и d в отдельных списках?

Ответ №1:

Хотя неясно, почему вы не хотите сохранять результаты в списке, вот как вы можете отображать значения по одному за раз

 import matplotlib.pyplot as plt

fig = plt.figure()

# Your remaining code up to while loop

while d>=0:
    # Rest of the code
    plt.plot(t, d, 'bo', ms=4) # Way 1 to plot
    # plt.scatter(t, d, color='b') # Way 2 to plot
plt.show()
  

введите описание изображения здесь