2011-10-08 19 views

Respuesta

22

Mira la pyplot documentation.

  • pyplot.hist puede "conectarse" eje y para usted con registro argumento de palabra clave = True
  • pyplot.hist acepta bins argumento de palabra clave, pero usted tiene que "registrar" eje x ti mismo

por ejemplo:

#!/usr/bin/python 
import numpy 
from matplotlib import pyplot as plt 

data = numpy.random.gumbel(2 ** 20, 2 ** 19, (1000,)) 

bins = range(15, 25) 
plt.xticks(bins, ["2^%s" % i for i in bins]) 
plt.hist(numpy.log2(data), log=True, bins=bins) 
plt.show() 

Esto le dará los recuentos reales de cómo cuántos elementos se incluyen en cada bin, trazada en un eje de registro (que es lo que la gente suele decir con un gráfico log). No podría decir por su redacción si quería que esto o el registro del recuento trazados en un eje lineal.

Por cierto, los contenedores ni siquiera tienen que estar espaciados uniformemente.

+0

Para trazar el registro de la cuenta de un eje lineal es comparativamente más fácil, y de todos modos ambos métodos dan el mismo gráfico. +1 para el comienzo de la tecla. Pero no entiendo lo que haces en el código: ¿estás mostrando etiquetas falsas exponenciales en lo que realmente es una escala x lineal? –

Cuestiones relacionadas