极坐标与对数坐标的绘制
import numpy as np
import matplotlib.pyplot as plt-------------------------------对数坐标-------------------------------------------------
#绘制低通滤波器的频率响应
#用三种对数坐标表示,半对数坐标,全对数坐标。
w=np.linspace(0.1,1000,1000)
p=np.abs(1/(1+0.1j*w)) #低通滤波的频率响应#plt.subplot(221)
#plt.plot(w,p,linewidth=2)
#plt.ylim(0,1.5)
#
#plt.subplot(222)
#plt.semilogx(w,p,linewidth=2)
#plt.ylim(0,1.5)
#
#plt.subplot(223)
#plt.semilogy(w,p,linewidth=2)
#plt.ylim(0,1.5)
#
#plt.subplot(224)
#plt.loglog(w,p,linewidth=2)
#plt.ylim(0,1.5)
-------------------------------极坐标--------------------------------------------------
theta=np.arange(0,2*np.pi,0.02)plt.subplot(121,polar=True) #创建一个极坐标子图
#plt.polar
plt.plot(theta,1.6*np.ones_like(theta),linewidth=2)
plt.plot(3*theta,theta/3,'--',linewidth=2)plt.subplot(122,polar=True)
plt.plot(theta,1.4*np.cos(5*theta),'--',linewidth=2)
plt.plot(theta,1.8*np.cos(4*theta),linewidth=2)
plt.rgrids(np.arange(0.5,2,0.5),angle=45) #设置栅格的半径大小和文字标注的角度
#0.5 1 1.5 都在45度线上
plt.thetagrids([0,45]) #设置放射栅格的角度#自己试验一下怎么画极坐标
plt.figure(2)
theta_=np.array([0,np.pi/4,np.pi/2,np.pi])
r_=np.array([1,2,3,4])
plt.polar(theta_,r_,marker='*',linewidth=3,color='b',mfc='r',ms=10)
#mfc是*的颜色
极坐标与对数坐标的绘制
最新推荐文章于 2023-02-10 14:03:04 发布