takes python matplotlib histogram

python - takes - django url middleware



Cómo hacer un log log log en python (1)

Dado un conjunto de valores, quiero trazar un histograma de registro de estos valores por sus recuentos. Solo sé cómo registrar los valores de x, pero no los valores de y porque no se crean explícitamente en mi programa.


Echa un vistazo a la documentation pyplot.

  • pyplot.hist puede "registrar" su eje por usted con el argumento de palabra clave log = True
  • pyplot.hist acepta el argumento de la palabra clave bins , pero usted tiene que "registrar" x eje usted 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 proporcionará los recuentos reales de cuántos elementos caen en cada contenedor, trazados en un eje de registro (que es lo que las personas suelen entender por un gráfico de registro). No podía decir de su redacción si quería esto o el registro del conteo trazado en un eje lineal.

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