Python matplotlib -> 3D diagramme en barres -> réglage de tique position de l'étiquette, transparent bars

Je suis en train de créer un histogramme à barres 3D en Python à l'aide de bar3d() dans Matplotlib.

J'en suis arrivé au point où je peux afficher mon histogramme sur l'écran après le passage de quelques données, mais je suis coincé sur les points suivants:

  1. L'affichage des étiquettes d'axes correctement (actuellement en manque de finale (ou initiale?) étiquettes de graduation)
  2. Soit à la fabrication de tiques sur chaque axe (par exemple pour 'Mon') soit point à la correspondante de la barre bleue, ou de la position de l'étiquette de graduation entre les graduations principales.
  3. Faire les barres semi-transparent.

l'image de l'intrigue téléchargé ici

J'ai essayé de passer plusieurs arguments à l' 'ax' instance, mais n'avons rien eu à travailler malgré et me soupçonne d'avoir mal compris ce que de lui fournir. Je serai très reconnaissant pour toute aide sur ce.

Voici un exemple de code, je suis en train de travailler sur:

from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
import numpy as np
#from IPython.Shell import IPShellEmbed
#sh = IPShellEmbed()
data = np.array([
[0,1,0,2,0],
[0,3,0,2,0],
[6,1,1,7,0],
[0,5,0,2,9],
[0,1,0,4,0],
[9,1,3,4,2],
[0,0,2,1,3],
])
column_names = ['a','b','c','d','e']
row_names = ['Mon','Tue','Wed','Thu','Fri','Sat','Sun']
fig = plt.figure()
ax = Axes3D(fig)
lx= len(data[0])            # Work out matrix dimensions
ly= len(data[:,0])
xpos = np.arange(0,lx,1)    # Set up a mesh of positions
ypos = np.arange(0,ly,1)
xpos, ypos = np.meshgrid(xpos+0.25, ypos+0.25)
xpos = xpos.flatten()   # Convert positions to 1D array
ypos = ypos.flatten()
zpos = np.zeros(lx*ly)
dx = 0.5 * np.ones_like(zpos)
dy = dx.copy()
dz = data.flatten()
ax.bar3d(xpos,ypos,zpos, dx, dy, dz, color='b')
#sh()
ax.w_xaxis.set_ticklabels(column_names)
ax.w_yaxis.set_ticklabels(row_names)
ax.set_xlabel('Letter')
ax.set_ylabel('Day')
ax.set_zlabel('Occurrence')
plt.show()

OriginalL'auteur Dman | 2012-02-24