绘制没有坐标轴的曲面图

3
我想绘制一个没有坐标轴的表面图。我认为图片可以更好地解释:
我想得到这个: desirerd 但是,我得到了这个: current
3个回答

6
这个禁用了所有轴相关的东西:
ax.grid(False)
for a in (ax.w_xaxis, ax.w_yaxis, ax.w_zaxis):
    for t in a.get_ticklines()+a.get_ticklabels():
        t.set_visible(False)
    a.line.set_visible(False)
    a.pane.set_visible(False)

3

经过长时间的思考,我终于想出了这个解决方案:

ax.grid(False)
ax.w_xaxis._AXINFO['y']['color'] = (0.9, 0.9, 0.9, 0.0)
ax.w_xaxis._AXINFO['x']['color'] = (0.9, 0.9, 0.9, 0.0)
ax.w_xaxis._AXINFO['z']['color'] = (0.9, 0.9, 0.9, 0.0)

接下来,我打赌你想要关闭刻度线、刻度标签等。但我做不到!
人们可能认为ax.axis("off")ax.xaxis.visible(False)ax.xaxis.set_alpha(0.0)会有明显的效果。
我正在使用版本1.0.1,怀疑axis3d对象中仍然存在许多错误。它最近经历了很多变化。 enter image description here

我也尝试了一些显而易见的东西,比如 ax.axis("off"),但没有成功。感谢你深入挖掘API找到这个问题,但我同意3D库确实缺乏一些功能。 - JoshAdel

2
您想要的是grid关键字(如果我理解问题正确的话):
fig=figure()
ax = fig.add_subplot(111,projection="3d")
ax.plot(X,Y,Z)
ax.grid(on=False)
show()

希望能看到您如何设置绘图,但至少对于我在 pylab 中尝试使用 ax.grid(on=False) 即可解决问题。这将关闭投影到立方体侧面的网格。有关更多详细信息,请参见 mplot3d API:

http://matplotlib.sourceforge.net/mpl_toolkits/mplot3d/api.html


不仅仅是网格...我指的是使边界立方体的灰色平面..我想只渲染表面,就像在OpenGL中渲染它们一样。 - nkint
@nkint - 你自己有没有查看过API?我快速浏览了一下,没有找到似乎可以移除灰色坐标轴平面的方法。如果你能(1)明确说明你想要实现的目标,以及(2)你自己尝试过的方法,那会很有帮助。另外,如果你搜索过以往的问题,你会发现一个类似的问题一直没有得到答复:https://dev59.com/C1DTa4cB1Zd3GeqPJ4mJ - JoshAdel

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