2011-05-08 39 views
15

Tengo dos listas, xey.
x contiene el alfabeto A-Z e Y contiene la frecuencia de los mismos en un archivo.Trazar histograma en Python

He intentado investigar cómo trazar estos valores en un histograma, pero no ha tenido éxito en entender cómo trazarlo.

n, bins, patches = plt.hist(x, 26, normed=1, facecolor='blue', alpha=0.75) 

¿Sería x la lista en las listas mencionadas anteriormente?

+0

No hay ni siquiera un signo de interrogación en su pregunta. Pero echa un vistazo a matplotlib. – Keith

Respuesta

44

hist trabaja en una colección de valores y calcula y extrae el histograma de ellos. En su caso, ya precalculó la frecuencia de cada grupo (carta). Para representar los datos en un formulario de uso histograma matplotlib mejor bar:

import numpy as np 
import matplotlib.pyplot as plt 

alphab = ['A', 'B', 'C', 'D', 'E', 'F'] 
frequencies = [23, 44, 12, 11, 2, 10] 

pos = np.arange(len(alphab)) 
width = 1.0  # gives histogram aspect to the bar diagram 

ax = plt.axes() 
ax.set_xticks(pos + (width/2)) 
ax.set_xticklabels(alphab) 

plt.bar(pos, frequencies, width, color='r') 
plt.show() 

enter image description here

+1

Esa cosa '+ (ancho/2)' está en desuso. Solo usa 'ax.set_xticks (pos)'. – smoneck

Cuestiones relacionadas