import numpy as np
import matplotlib.pyplot as plt
a=np.linspace(0, 360, 300) #从0~360取间隔相同的300个数
theta=a/180*np.pi #化成弧度
b=np.linspace(360,0,300)
r=b/180*np.pi #化成弧度
print(theta)
print(r)
hist,x,y=np.histogram2d(theta,r,bins=100,range=[[0,np.pi*2],[0,np.pi*2]])
#统计同时满足两个区间条件的角度个数
print(hist)
print(x)
print(y)
fig = plt.figure(figsize=(10,10)) #设置画布大小
ax = plt.subplot(projection='polar') #设置坐标是极坐标
ax.set_rgrids([np.pi/2,np.pi,np.pi*3/2]) #设置坐标细节
c,d=np.meshgrid(x,y) #创建格点,将hist的值对应进来
plt.grid(True,ls=':') #显示格点
print(c)
print(d)
im = ax.pcolormesh(c,d,hist,cmap=plt.cm.RdGy) #绘制图像
fig.colorbar(im,ax=ax) #画出colorbar
plt.show() #显示图像
|