[問題] 圖案沒有辦法畫

看板Python作者 (小密特)時間7年前 (2018/05/15 14:12), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
請問各位大大,為什麼有時候我改tspan = np.linspace(0,6, 100)的參數 變成tspan = np.linspace(0,3, 100),有時候就可以畫圖有時候就不行。 我希望可以畫出圈圈阿。 import numpy as np import matplotlib.pyplot as plt def f(Y, t): y1, y2 = Y return [-y2*(1-y1*y2)+0.1*y1, y1*(1-y1)+0.1*y2] y1 = np.linspace(-4.0, 4.0, 20) y2 = np.linspace(-4.0, 4.0, 20) Y1, Y2 = np.meshgrid(y1, y2) t = 0 u, v = np.zeros(Y1.shape), np.zeros(Y2.shape) NI, NJ = Y1.shape for i in range(NI): for j in range(NJ): x = Y1[i, j] y = Y2[i, j] yprime = f([x, y], t) u[i,j] = yprime[0] v[i,j] = yprime[1] Q = plt.quiver(Y1, Y2, u, v, color='r') plt.xlabel('$y_1$') plt.ylabel('$y_2$') plt.xlim([-4, 4]) plt.ylim([-4, 4]) plt.savefig('e:/phase-portrait.png') from scipy.integrate import odeint for y20 in [0, 0.5,0.6, 0.7, 0.8, 0.9, 1, 2,3,-0.5,-0.6, -0.7, -0.8, -0.9 -1, -2, -3]: tspan = np.linspace(0,6, 100) y0 = [0.0, y20] ys = odeint(f, y0, tspan) plt.plot(ys[:,0], ys[:,1], 'b-') # path plt.plot([ys[0,0]], [ys[0,1]], 'o') # #start plt.plot([ys[-1,0]], [ys[-1,1]], 's') # #end plt.xlim([-4, 4]) plt.savefig('e:/phase-portrait-2.png') plt.show() -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 115.82.7.252 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1526364727.A.97E.html
文章代碼(AID): #1Q-detb- (Python)
文章代碼(AID): #1Q-detb- (Python)