Hi all,

I'm making a 3d plot using Axes3D (plot_surface) and I want to get rid of the 3d gray box that surrounds the object so that only the object shows up. Is there a way to do it? After creating my Axes3D instance, I can't find much else than methods to change the x,y,z labels and axis limits.

I found a hack using myAXINFO to change the color of each "panel" but the axis line still remains there.

Ideally, there would be methods to access the color, visibility, etc., of these elements. Maybe it's somewhere I can't find them...

Here's a code snippet derived from one of the website's examples:

## ···

#############

from mpl_toolkits.mplot3d import Axes3D

from matplotlib import cm

from matplotlib.ticker import LinearLocator, FixedLocator, FormatStrFormatter

import matplotlib.pyplot as plt

import numpy as np

fig = plt.figure()

ax = fig.gca(projection='3d')

X = np.arange(-5, 5, 0.25)

Y = np.arange(-5, 5, 0.25)

X, Y = np.meshgrid(X, Y)

R = np.sqrt(X**2 + Y**2)

Z = np.sin(R)

surf = ax.plot_surface(X, Y, Z, rstride=1, cstride=1, cmap=cm.jet,

linewidth=0, antialiased=False)

ax.set_zlim3d(-1.01, 1.01)

# The following makes the panels white, but the axis line remains there

myAXINFO = { 'x': {'i': 0, 'tickdir': 1, 'juggled': (1, 0, 2), 'color': (1.0, 1.0, 1.0, 1.0, 1.0)}, 'y': {'i': 1, 'tickdir': 0, 'juggled': (0, 1, 2), 'color': (1.0, 1.0, 1.0, 1.0, 1.0)}, 'z': {'i': 2, 'tickdir': 0, 'juggled': (0, 2, 1), 'color': (1.0, 1.0, 1.0, 1.0, 1.0)} }

ax.w_zaxis._AXINFO = myAXINFO

ax.w_yaxis._AXINFO = myAXINFO

ax.w_xaxis._AXINFO = myAXINFO

plt.show()

#############

Thanks!

Rene