Matplotlib - Numpy - Seaborn

El presente documento muestra como crear diagramas de barras (Bar Charts) en el lenguaje de programación Python, utilizando las librerías Matplotlib, Numpy y Seaborn.
Autor
Afiliación
Fecha de Publicación

September 15, 2022

Importante

Recomendamos instalar las últimas versiones de R,RStudio,Python y Quarto.

Fin Documento

1 Diagramas de Barras

El diagrama de barras (Bar Chart) es un gráfico estadístico que nos permite representar la distribución de frecuencias de variables cualitativas y cuantitativas discretas; nuestro objetivo es pasar del lápiz y papel al uso del lenguaje de programación Python(Van Rossum & Drake Jr, 1995) , recomendamos la lectura del libro Python: Los fundamentos del lenguaje(Chazallet, 2016); compartimos la siguiente imagen como referencia.

pip install matplotlib
pip install numpy
pip install seaborn
import matplotlib.pyplot as plt
import numpy as np
import seaborn as sns

2 Bar Charts - Matplotlib

Matplotlib(Hunter, 2007) es una librería del lenguaje de programación Python, que nos permite crear gráficos estadísticos de gran calidad, RMarkdown(Allaire et al., 2022) nos permite trabajar con otros lenguajes de programación tales como C++, SQL, Julia, entre muchos otros; a continuación mostramos un diagrama de barras (Bar Chart) creado con Matplotlib.

Código
eje_x = ['Python', 'R', 'Node.js', 'PHP']
 

eje_y = [50,20,35,47]
 

plt.bar(eje_x, eje_y)
 

plt.ylabel('Cantidad de usuarios')
 

plt.xlabel('Lenguajes de programación')
 

plt.title('Usuarios de lenguajes de programación')
 

plt.show()

Bar Chart creado con Matplotlib

Python for Data Sciene https://bit.ly/3Bk8VUM

3 Diagrama Barras Horizontal

A continuación, presentamos como crear un diagrama de barras horizontal en el lenguaje de programación Python, utilizando la librería Matplotlib.

Código
eje_x = ['Prog.', 'Ciencia', 'Mat.', 'Ing.']
 

eje_y = [76,31,45,57]

colores =['#FF8C00','#9932CC','#8B0000','#8FBC8F']
 

plt.barh(eje_x, eje_y, color=colores)

for index,value in enumerate(eje_y):
    plt.text(value,index,str(value))

plt.ylabel('Empleados')
plt.xlabel('Habilidades')
plt.title('Habilidades')
plt.show()

Bar Chart creado con Matplotlib

Consejo!!!

El uso de Markdown mejora la estructura y configuración de tus documentos Quarto

4 Diagrama Barras Apiladas

A continuación, presentamos como crear un diagrama de barras apiladas en el lenguaje de programación Python, utilizando las librerías Matplotlib y Numpy(Harris et al., 2020).

Código
serie_1 = [406, 387, 442, 457, 485]
serie_2 = [421, 453, 435, 478, 512]
 
 
numero_de_grupos = len(serie_1)
indice_barras = np.arange(numero_de_grupos)
ancho_barras =0.35
 
plt.bar(indice_barras, serie_1, width=ancho_barras, label='Hombres')
plt.bar(indice_barras + ancho_barras, serie_2, width=ancho_barras, label='Mujeres')
plt.legend(loc='best')

plt.xticks(indice_barras + ancho_barras, ('2017', '2018', '2019', '2020','2021'))
 
plt.ylabel('Numero de habitantes')
plt.xlabel('Año')
plt.title('Numero de habitantes por genero')
 
plt.show()

Bar Chart creado con Matplotlib y Numpy

Nota

Quarto permite ejecutar código de R,Python,Julia y Observable JS

5 Bar Charts - Seaborn

Seaborn(Waskom, 2021) es una librería de Python que nos permite crear gráficos estadísticos de gran calidad, fue creada tomando como base Matplotlib.

Código
eje_x = [4,6,8]

eje_y = [11,7,14]

sns.barplot(x=eje_x,y=eje_y)

plt.title("Número de cilindros")

plt.xlabel("Cilindros")

plt.ylabel("Frecuencias")

plt.show()

Bar Chart creado con Seaborn

6 Markdown - RMarkdown - Quarto

A continuación, mostramos los logos que identifican a las herramientas Markdown1,RMarkdown2 y Quarto3

Figura 1: Logo Markdown

Figura 2: Logo RMarkdown

Figura 3: Logo Quarto

7 YouTube - Tutorial

Compartimos el siguiente tutorial tomado de la plataforma YouTube que muestra como crear diagramas de barras (Bar Charts) en el lenguaje de programación Python, utilizando las librerías Matplotlib y Seaborn.

Inicio Documento

Referencias

Allaire, J., Xie, Y., McPherson, J., Luraschi, J., Ushey, K., Atkins, A., Wickham, H., Cheng, J., Chang, W., & Iannone, R. (2022). rmarkdown: Dynamic Documents for R. https://github.com/rstudio/rmarkdown
Chazallet, S. (2016). Python 3: los fundamentos del lenguaje. Ediciones ENI.
Harris, C. R., Millman, K. J., Walt, S. J. van der, Gommers, R., Virtanen, P., Cournapeau, D., Wieser, E., Taylor, J., Berg, S., Smith, N. J., Kern, R., Picus, M., Hoyer, S., Kerkwijk, M. H. van, Brett, M., Haldane, A., Río, J. F. del, Wiebe, M., Peterson, P., … Oliphant, T. E. (2020). Array programming with NumPy. Nature, 585(7825), 357-362. https://doi.org/10.1038/s41586-020-2649-2
Hunter, J. D. (2007). Matplotlib: A 2D graphics environment. Computing in Science & Engineering, 9(3), 90-95. https://doi.org/10.1109/MCSE.2007.55
Van Rossum, G., & Drake Jr, F. L. (1995). Python reference manual. Centrum voor Wiskunde en Informatica Amsterdam.
Waskom, M. L. (2021). seaborn: statistical data visualization. Journal of Open Source Software, 6(60), 3021. https://doi.org/10.21105/joss.03021

Notas

  1. Markdown es un lenguaje de marcado ligero, que permite configurar la estructura y presentación de nuestros documentos, para luego convertirlos a formatos HTML.↩︎

  2. RMarkdown es un paquete del lenguaje de programación R, que nos permite crear documentos científicos y técnicos para convertirlos a formatos tales como HTML,PDF,Word entre otros.↩︎

  3. Quarto es un sistema de publicación de documentos científicos y técnicos, que nos permite ejecutar código de R,Python,Julila y Observable JS.↩︎