在使用matplotlib.pyplot的subplot()函数创建图形区域时,可以设定参数projection='polar',或者 polar=True,就可以在极坐标下绘制图形。
import matplotlib as mplimport matplotlib.pyplot as pltimport numpy as npmpl.rcParams["font.sans-serif"] = ["SimHei"]pi = np.pitheta=np.arange(0,2*pi,0.02)#极角,弧度制r1 = theta /6.0 #半径r2 = 1*(1 -np.sin(theta))r3 = 3+ np.cos(7* theta)e = 0.5p= 1.0r4 = e*p / (1 - e*np.cos(theta))ax1= plt.subplot(221, projection='polar')#使用极坐标ax1.plot(theta, r1, "g-")#螺旋线ax2= plt.subplot(222, polar =True)ax2.plot(theta, r2,'r-',lw=2)#心形曲线#ax2.set_rlim(0.6,1.2) # 可设定半径范围#ax2.set_thetalim(pi, 2*pi) # 可设定极角范围ax3= plt.subplot(223, polar =True)#使用极坐标ax3.plot(theta, r3,'b-')ax4= plt.subplot(224, polar =True)#使用极坐标ax4.plot(theta, r4,'m-') #椭圆plt.tight_layout()plt.suptitle("使用极坐标绘图