Python - Representar un counter

 
Vista:

Representar un counter

Publicado por Santo (1 intervención) el 07/01/2022 07:02:59
Buenas tengo la siguiente función:

def contador_nacionalidades(datos):
contadas={}
numero_astronautas=[(e.nacionalidad) for e in datos]
contador= Counter(numero_astronautas)
return contador
contador.sort(key=lambda x: x[0], reverse=True)
contadas=contador
return contadas

Que me devuelve lo siguiente:
Counter({'U.S.': 852, 'U.S.S.R/Russia': 273, 'Japan': 20, 'France': 18, 'Canada': 18, 'Germany': 16, 'China': 14, 'Italy': 13, 'U.K./U.S.': 6, 'Switzerland': 4, 'Australia': 4, 'Netherland': 3, 'Belgium': 3, 'Bulgaria': 2, 'U.K.': 2, 'Spain': 2, 'Sweden': 2, 'Mongolia': 1, 'Romania': 1, 'Czechoslovakia': 1, 'Poland': 1, 'Hungry': 1, 'Vietnam': 1, 'Cuba': 1, 'India': 1, 'Saudi Arabia': 1, 'Mexico': 1, 'Syria': 1, 'Afghanistan': 1, 'Austria': 1, 'U.S.S.R/Ukraine': 1, 'Slovakia': 1, 'Republic of South Africa': 1, 'Israel': 1, 'Brazil': 1, 'Malysia': 1, 'Korea': 1, 'Denmark': 1, 'Kazakhstan': 1, 'UAE': 1})

¿Existe alguna manera de representar esto de manera gráfica? Un diagrama de barras o algo así.
Gracias con antelación
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Francisco Javier
Val: 249
Ha aumentado su posición en 29 puestos en Python (en relación al último mes)
Gráfica de Python

Representar un counter

Publicado por Francisco Javier (313 intervenciones) el 09/01/2022 10:12:11
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import matplotlib
import matplotlib.pyplot as plt
 
 
 
ejemplo_1={'U.S.': 852, 'U.S.S.R/Russia': 273, 'Japan': 20, 'France': 18, 'Canada': 18, 'Germany': 16, 'China': 14, 'Italy': 13, 'U.K./U.S.': 6, 'Switzerland': 4, 'Australia': 4, 'Netherland': 3, 'Belgium': 3, 'Bulgaria': 2, 'U.K.': 2, 'Spain': 2, 'Sweden': 2, 'Mongolia': 1, 'Romania': 1, 'Czechoslovakia': 1, 'Poland': 1, 'Hungry': 1, 'Vietnam': 1, 'Cuba': 1, 'India': 1, 'Saudi Arabia': 1, 'Mexico': 1, 'Syria': 1, 'Afghanistan': 1, 'Austria': 1, 'U.S.S.R/Ukraine': 1, 'Slovakia': 1, 'Republic of South Africa': 1, 'Israel': 1, 'Brazil': 1, 'Malysia': 1, 'Korea': 1, 'Denmark': 1, 'Kazakhstan': 1, 'UAE': 1}
nacionalidades=list()
n_astronautas=list()
 
for nacion,astronautas in ejemplo_1.items():
    #Definimos una lista con nacionalidades como string de 3 para que no ocupe el nombre entero
    nacionalidades.append(nacion[:3])
    #Definimos una lista con numero de sstronautas
    n_astronautas.append(astronautas)
 
fig, ax = plt.subplots()
#etiqueta en el eje Y
ax.set_ylabel('Numero astronautas')
#etiqueta en el eje X
ax.set_title('Nacionalidades')
#creamos grafica lineal
ax.plot(nacionalidades, n_astronautas)
plt.savefig('grafica_lineal_seno.png')
 
plt.show()#para mostrar la grafica
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar