cambie la posición (movimiento) de las etiquetas de tic al dibujar con matplotlib

Estoy conspirando con matplotlib. El código es el siguiente (zvals tiene los valores)

cmap = mpl.colors.ListedColormap(['darkblue', 'blue', 'lightblue','lightgreen','yellow','gold','orange','darkorange','orangered','red'])
bounds=[0, 10,20,30,40,50,60,70,80,100,200,1000]
norm = mpl.colors.BoundaryNorm(bounds, cmap.N)
img2 = plt.imshow(zvals,interpolation='nearest',
                cmap = cmap,
                norm=norm,
                origin='lower')


xlocations = na.array(range(30)) + 0.5
xticks(xlocations, [str(x+1) for x in arange(30)], rotation=0, size=5)
gca().xaxis.set_ticks_position('none')
gca().yaxis.set_ticks_position('none')  
grid(True)

esto se traduce en la siguiente imagen:http://imageshack.us/a/img145/7325/histogrammoverview.png

Me gustaría mover las etiquetas de los xticks (1,2,3, ..) hacia la izquierda un poco, por lo que están debajo de los cuadros de color correspondientes. en consecuencia, también me gustaría mover las etiquetas de los íconos (usuario1 y usuario2) hacia abajo un poco para que se muestren correctamente. ¿Cómo se puede hacer esto?

EDITAR: de hecho, podría cambiar las siguientes líneas xlocations = na.array (rango (30)) + 0.5 a xlocations = na.array (range (30))

entonces las imágenes resultantes son así:http://imageshack.us/a/img338/7325/histogrammoverview.png

Por favor, vea que la cuadrícula está "pasando" por los cuadros de colores, que no es lo que quiero. Me gustaría que la cuadrícula afine los cuadros de colores como en la imagen de arriba. en esta versión, aunque las etiquetas (1,2,3, ...) están colocadas correctamente debajo de las cajas. ¿Cómo puedo colocar correctamente las etiquetas (debajo de los cuadros de colores) y una cuadrícula que está alrededor de los cuadros de colores y no a través de la mitad de los cuadros de colores?

SOLUCIÓN

Esta solución funciona (como lo sugiere la respuesta):

periods = 30
xlocations = na.array(range(periods))
xminorlocations = na.array(range(periods))+0.5
xticks(xlocations, [str(x+1) for x in arange(periods)], rotation=0, size=5)
plt.set_xticks(xminorlocations, minor=True)
grid(True, which='minor', linestyle='-')

resultado: hxxp: //imageshack.us/a/img9/7325/histogrammoverview.png

Respuestas a la pregunta(1)

Su respuesta a la pregunta