簡體   English   中英

我無法在 matplotlib 中顯示圖形

[英]I am not able to display graph in matplotlib

我正在嘗試打印一個邏輯微分方程,我很確定方程寫得正確,但我的圖表沒有顯示任何內容。

import matplotlib as mpl
import matplotlib.pyplot as plt
import numpy as np

def eq(con,x):
    return con*x*(1-x)

xList = np.linspace(0,4, num=1000)
con = 2.6
x= .4

for num in range(len(xList)-1):
    plt.plot(xList[num], eq(con,x))
    x=eq(con,x)

plt.xlabel('Time')
plt.ylabel('Population')
plt.title("Logistic Differential Equation")

plt.show()

你在你的情節中一無所獲,因為你正在繪制點。

在 plt 中,您需要有 x 數組和 y 數組(具有相同的長度)才能繪制圖。

如果你想做你正在做的事情,我建議這樣做:

import matplotlyb.pyplot as plt # just plt is sufficent 
import numpy as np
def eq(con,x):
    return con*x*(1-x)

xList = np.linspace(0,4, num=1000)
con = 2.6
x= .4

y = np.zeros(len(xList)) # initialize an array with the same lenght as xList
for num in range(len(xList)-1):
    y[num] = eq(con,x)
    x=eq(con,x)

plt.figure() # A good habit is always to use figures in plt 
plt.plot(xList, y) # 2 arrays of the same lenght
plt.xlabel('Time')
plt.ylabel('Population')
plt.title("Logistic Differential Equation")

plt.show() # now you should get somthing here

我希望這對你有幫助^^

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM