Я хочу построить поверхность без плоскостей осей. Думаю, я лучше объясню с изображениями:
Я хочу получить вот это:
Вместо этого я получаю это:
Я хочу построить поверхность без плоскостей осей. Думаю, я лучше объясню с изображениями:
Я хочу получить вот это:
Вместо этого я получаю это:
Этот отключает все материалы осей:
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)
После долгого биения головой о стену я смог придумать это:
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 все еще много ошибок. В последнее время он видел много изменений.
ax.axis("off")
, но безуспешно. Престижность за то, что вы так глубоко копаетесь в API, чтобы найти это, но я согласен, что 3D-библиотеки определенно не хватает.
- person JoshAdel; 28.02.2011
Вам нужно ключевое слово 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)
помогло. Это выключает сетку, спроецированную на стороны куба. Подробнее см. API mplot3d:
http://matplotlib.sourceforge.net/mpl_toolkits/mplot3d/api.html