【发布时间】:2019-04-22 20:32:59
【问题描述】:
我想要一个频率函数的相位图形,但是如果我运行我的代码,输出会给我一个类型错误 f = np.arange(1,1000000) faseverschuiving_functie(mt.atan(2*np.pifRC) (180/(np.pi)))。我不知道为什么。
我已经尝试将 arange 更改为 linspace,但我仍然遇到同样的问题。
import matplotlib.pylab as plt
import numpy as np
import math as mt
R = 1000
C = 470*pow(10,-9)
f = np.arange(1,1000000)
kantelfrequentie = 1/(2*np.pi*R*C)
print("De kantelfrequentie is ",kantelfrequentie,"Hz")
Faseverschuiving = mt.atan(2*np.pi*R*C*kantelfrequentie)
print("De faseverschuiving bedraagt",Faseverschuiving,"rad")
#Omzetten radialen in graden
Faseverschuiving = Faseverschuiving * (180/(np.pi))
print("De faseverschuiving bedraagt",Faseverschuiving,"°")
faseverschuiving_functie = []
#Functie opstellen
faseverschuiving_functie(mt.atan(2*np.pi*f*R*C)* (180/(np.pi)))
#---------------------------------------------------------------------------
#Plot de eerste grafiek
#Grootte van de figuur en de subplot bepalen
plt.figure(figsize=(10,10))
plt.subplot(111)
#Titel van de grafiek
plt.title("faseverschuiving = f(frequentie)")
#Grafiek plotten
plt.plot(f,faseverschuiving_functie,"r*-",label = "Faseverschuiving")
#Assen benoemen
plt.xlabel("f (Hz)")
plt.ylabel("φ (°)")
plt.grid()
plt.legend()
此代码的输出通常是图形,但 de faseverschuiving_functie 给我一个类型错误,我不知道为什么。 f(frequentie)和faseverschuiving_functie的长度是一样的。
【问题讨论】: