仅在三维图中关闭Z轴。

13

我有一些使用mpl_toolkits.mplot3d创建的表面绘图,我可以从不同的角度查看。但是当我从正上方查看 (elev = 90, azim = 90) 时,z轴的文本全部堆在了一起。

ax.set_axis_off()可以隐藏所有轴,但我想要隐藏或关闭z轴,同时仍然能够看到x轴和y轴。

我该怎么做呢?

3个回答

18

大多数功能可以通过w_zaxis访问:

在这种情况下,您可以使用:

ax.w_zaxis.line.set_lw(0.)
ax.set_zticks([])

我曾尝试使用ax.get_zaxis()对Z轴进行操作,但出现了没有此方法的错误。我将get_zaxis()替换为w_zaxis - 这样做起作用了。但最近我使用了zaxis字段,它可以完成相同的工作,而且更短。 - mbdevpl

4

虽然这个问题很久以前就已经发布了,但是我没有找到一个好的解决方案。后来我尝试着自己写代码,发现下面的代码可能有效:

ax.set_zticks([])

2
这与其他四年前的答案有何不同? - user

0
自从第一个答案发布以来,已经移除了w_zaxis参数。根据Matplotlib 3.8.0的最新版本,这可能是最好的方法:
ax.zaxis.set_label_position('none')
ax.zaxis.set_ticks_position('none')

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