Vla*_*gas 5 python plot matplotlib
我试图用这段代码绘制极坐标图:
import numpy as np
import matplotlib.pylab as plt
def power(angle, l, lam):
return 1/(lam) * ((np.cos(np.pi*l*np.cos(angle)/lam) - np.cos(np.pi*l/lam))/np.sin(angle))**2
fig = plt.figure(1)
ax = fig.add_subplot(111, projection='polar')
theta = np.linspace(0.001, 2*np.pi, 100)
P1 = power(theta, 1, 5)
ax.plot(theta, P1, color='r', linewidth=3)
plt.savefig('1.png')
Run Code Online (Sandbox Code Playgroud)
我得到这个情节:
我想改变两件事.第一个也是更重要的一个是隐藏径向刻度标签(我只是想显示绘图的一般形式).
如果可能,如何选择垂直轴对应0°?
谢谢你的帮助.
Jul*_*nck 11
您可以使用set_yticklabels()删除径向刻度并set_theta_zero_location()更改零位置:
fig = plt.figure(1)
ax = fig.add_subplot(111, projection='polar')
ax.plot(theta, P1, color='r', linewidth=3)
ax.set_yticklabels([])
ax.set_theta_zero_location('N')
plt.show()
Run Code Online (Sandbox Code Playgroud)
您可能还想更改方位角轴的方向:
ax.set_theta_direction(-1)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4978 次 |
| 最近记录: |