[英]Plot graph in Python
將 numpy 導入為 np
將熊貓導入為 pd
將 matplotlib.pyplot 導入為 plt
'''
K = 1
Rmv = 26
信號強度 = 111.7
M = 2.050
N = 2
信號強度 = (-249.4)
def Mittelspannung():
result = []
Z = []
SigM = []
for i in range(1,31):
output = 1 - pow((((i-1)*1/14.5)-1),2)
result.append(output)
#print(output)
for value in range(0,15):
C4 = (Rmv) - (result[value]) * (Rmv)
Z.append(C4)
print(C4)
for value in range(15,30):
B11 = (SigD) - (result[value]) * (SigD)
Z.append(B11)
print(B11)
for x in range(0,30):
SigMean = ((SigS**M * (1-(Z[x] + SigS)**N/(Rmv + SigS)**N))**(1/M)) / K
SigM.append(SigMean)
return SigM
打印(Mittelspannung())
'''
我正在嘗試繪制“Z”和“SigM”之間的圖表。 我收到一個錯誤。 任何人都可以幫助繪制圖表。
您應該創建一個列表Z
,您將在其中附加每次迭代計算的 Z 值,如下所示:
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
K = 1
Rmv = 26
SigS = 111.7
M = 2.050
N = 2
SigD = (-249.4)
def Mittelspannung():
result = []
Y = []
SigM = []
Z = []
for i in range(1,31):
output = 1 - pow((((i-1)*1/14.5)-1),2)
Z.append(Rmv - (output*Rmv))
result.append(output)
for value in range(0,15):
C4 = (Rmv) - (result[value]) * (Rmv)
Y.append(C4)
for value in range(15,30):
B11 = (SigD) - (result[value]) * (SigD)
Y.append(B11)
for x in range(0,30):
SigMean = ((SigS**M * (1-(Z[x] + SigS)**N/(Rmv + SigS)**N))**(1/M)) / K
SigM.append(SigMean)
return Z, SigM
Z, SigM = Mittelspannung()
plt.figure()
plt.plot(Z, SigM)
您沒有在函數調用中定義 Z 。 根據您使用的工具,您應該能夠在錯誤消息中看到“在初始化之前正在使用 Z”之類的內容。
Z, SigM = Mittelspannung()
plt.figure()
plt.plot(Z, SigM)
此代碼將向您顯示錯誤
#錯誤
----> 1 Z, SigM = Mittelspannung()
2 plt.figure()
3 plt.plot(Z, SigM)
ValueError:要解包的值太多(預期為 2)
//試試這個
SigM = Mittelspannung()
plt.figure()
plt.plot(SigM)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.