在matplotlib极坐标图中更改标签

10
我正在使用matplotlib创建极坐标图表来表示玫瑰图。 目前,图表创建得很完美。我想要用方向名称替换在轴上显示的角度:N代表0度,W代表90度,S代表180度和E代表270度。
当前的玫瑰图如下所示: enter image description here 注意:我已经尝试过windrose,但是该输出对于我的目的更为合适。因此,为轴分配自定义标签的好方法将非常有帮助。
我使用的Python版本为2.6,Matplotlib版本为1.2.0。
1个回答

16
假设您有一个轴对象ax, 您可以简单地像这样做:
ax.set_xticklabels(['N', '', 'W', '', 'S', '', 'E', ''])

或者通过这个旧的例子获得一些灵感。


1
谢谢。我将代码修改如下: rose=fig.add_subplot(111, polar=True) rose.set_xticklabels(['N', '', 'W', '', 'S', '', 'E', '']) 现在它可以正常工作了。 - DotPi
这就是我想表达的:我的 ax 就是你所说的 rose - Francesco Montesano
5
建议将“零度”移到最顶部。 ax.set_theta_offset(np.pi/2) 可以翻译为“将ax的theta偏移值设置为π/2”。 - Marcel Flygare

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接