UNI



INTRODUCCIÓN A LA COMPUTACIÓN
Alumno: Sergio Fernando Feliciano Zuñiga
Profesor: Carlos Alberto Janjachi
FIIS-UNI
Seaborn: ¿Qué es y por qué es importante?
¿Qué es Seaborn?
Seaborn es una biblioteca de visualización de datos en Python basada en Matplotlib. Está diseñada para crear gráficos atractivos y informativos con menos código que Matplotlib. Seaborn proporciona una interfaz de alto nivel para dibujar gráficos estadísticos atractivos y está diseñada para funcionar bien con los dataframes de Pandas.
Algunas características clave de Seaborn incluyen:
-
Estilo atractivo por defecto: Seaborn proporciona estilos atractivos y paletas de colores por defecto, lo que facilita la creación de gráficos visualmente agradables sin tener que ajustar muchos detalles.
-
Funciones especializadas: Ofrece funciones especializadas para la visualización de datos estadísticos, como diagramas de dispersión con ajustes de regresión, diagramas de cajas, diagramas de violín, mapas de calor y más.
-
Integración con Pandas: Seaborn se integra naturalmente con los dataframes de Pandas, permitiendo trabajar fácilmente con datos organizados en tablas.
-
Facilidad de uso: A través de su interfaz, Seaborn simplifica la creación de gráficos complejos y estadísticamente informativos con menos líneas de código.
A pesar de que Seaborn se basa en Matplotlib, añade funcionalidades y estilos adicionales para facilitar la creación de visualizaciones atractivas. Al utilizar Seaborn, puedes producir gráficos de alta calidad de manera más rápida y sencilla.
¿Por qué es importante Seaborn?
La librería Seaborn es importante en el ámbito de la visualización de datos por varias razones:
-
Estilo Estético: Seaborn proporciona estilos estéticos atractivos y predeterminados que mejoran la apariencia de los gráficos, haciéndolos más agradables visualmente. Esto es crucial para la presentación de datos a audiencias no técnicas o para mejorar la legibilidad en informes y presentaciones.
-
Simplicidad de Uso: Seaborn simplifica la creación de gráficos complejos mediante una interfaz de alto nivel. Esta simplicidad facilita la creación de visualizaciones efectivas con menos líneas de código, lo que es beneficioso para los usuarios, especialmente aquellos que están menos familiarizados con la programación gráfica.
-
Integración con Pandas: Seaborn se integra fácilmente con los dataframes de Pandas, una biblioteca popular para manipulación y análisis de datos en Python. Esto permite a los usuarios trabajar de manera eficiente con datos organizados en tablas, comúnmente utilizados en análisis de datos.
-
Funciones Estadísticas Especializadas: La biblioteca proporciona funciones especializadas para visualizar datos estadísticos, como diagramas de dispersión con ajustes de regresión, diagramas de cajas y bigotes, diagramas de violín y mapas de calor. Estas funciones facilitan la exploración y comunicación de patrones y tendencias en los datos.
-
Flexibilidad y Personalización: A pesar de su enfoque en la simplicidad, Seaborn ofrece flexibilidad y opciones de personalización. Los usuarios pueden ajustar diversos aspectos de los gráficos según sus necesidades, lo que les permite adaptar las visualizaciones a contextos específicos.
-
Gráficos Estadísticos Complejos: Seaborn está diseñado para crear gráficos estadísticos complejos con facilidad, lo que ahorra tiempo a los analistas de datos y científicos de datos. Esto incluye la capacidad de crear fácilmente gráficos de series temporales, matrices de dispersión y otros tipos de visualizaciones avanzadas.
-
Mejoras sobre Matplotlib: Seaborn se construye sobre Matplotlib, otra biblioteca de visualización de datos en Python. Añade una capa adicional de funcionalidad y estilo, mejorando la experiencia del usuario y facilitando la creación de gráficos más atractivos.
Si bien la importancia de Seaborn radica en su capacidad para simplificar y mejorar el proceso de visualización de datos, permitiendo a los usuarios crear gráficos más efectivos y estéticos con menos esfuerzo y código.
Ventajas de Seaborn:​
-
Estilo Estético Mejorado: Seaborn proporciona estilos estéticos atractivos por defecto, mejorando la apariencia visual de los gráficos y facilitando la creación de visualizaciones más agradables.
-
Simplicidad de Uso: La interfaz de alto nivel de Seaborn simplifica la creación de gráficos complejos, lo que facilita su adopción para usuarios con diferentes niveles de experiencia en programación.
-
Integración con Pandas: Seaborn se integra naturalmente con los dataframes de Pandas, facilitando la manipulación y visualización de datos organizados en tablas.
-
Funciones Estadísticas Especializadas: Ofrece funciones especializadas para la visualización de datos estadísticos, como diagramas de dispersión con ajustes de regresión, diagramas de cajas y bigotes, diagramas de violín y mapas de calor.
-
Flexibilidad y Personalización: A pesar de su enfoque en la simplicidad, Seaborn permite a los usuarios personalizar diversos aspectos de los gráficos, brindando flexibilidad cuando es necesario.
-
Facilita la Creación de Gráficos Complejos: Seaborn está diseñado para la creación fácil de gráficos estadísticos complejos, ahorrando tiempo y esfuerzo a los analistas de datos.
Desventajas de Seaborn:​
-
Enfocado en Estadísticas: Aunque es ideal para gráficos estadísticos, Seaborn puede no ser la mejor opción si necesitas realizar visualizaciones más generales o personalizadas que no estén centradas en datos estadísticos.
-
Menos Control Detallado: Aunque Seaborn ofrece una gran cantidad de opciones de personalización, puede no ofrecer el mismo nivel de control detallado sobre los gráficos que Matplotlib. Para personalizaciones altamente específicas, puede ser necesario recurrir a Matplotlib.
-
Curva de Aprendizaje: Aunque Seaborn es más fácil de usar que Matplotlib para ciertos tipos de gráficos, puede haber una curva de aprendizaje para aquellos que buscan realizar personalizaciones más avanzadas o explorar funciones más complejas.
-
Dependencia de Matplotlib: Aunque Seaborn se construye sobre Matplotlib, esta dependencia puede presentar limitaciones si se necesita utilizar funcionalidades específicas de Matplotlib que no están directamente expuestas por Seaborn.
En general, Seaborn es una excelente herramienta para la visualización de datos estadísticos y gráficos complejos con una interfaz fácil de usar, pero es útil evaluar las ventajas y desventajas en función de las necesidades específicas del proyecto. Además, Seaborn y Matplotlib son complementarios, y muchos usuarios optan por utilizar ambos según el contexto y los requisitos de visualización.
NOTA:
Todos lo datos utilizados fueron extraídos de la siguiente página:
https://www.orce.uni.edu.pe/estadistica.php
​
EJEMPLO:
import seaborn as sns
import matplotlib.pyplot as plt
import pandas as pd
​
# Datos de ejemplo
data = {
'Facultad': ['FAUA', 'FC', 'FIA', 'FIC', 'FIEE', 'FIEECS', 'FIGMM', 'FIIS', 'FIM', 'FIPGNP', 'FIQT'],
'Masculino': [249, 1059, 552, 1298, 1291, 659, 714, 1386, 1412, 146, 494],
'Femenino': [501, 50, 200, 120, 100, 115, 130, 205, 100, 30, 220]
}
df = pd.DataFrame(data)
# Configuración de estilo de Seaborn (opcional)
sns.set(style="whitegrid")
# Configurar el ancho de las barras
bar_width = 0.35
# Calcular la posición de las barras
r1 = range(len(df['Facultad']))
r2 = [x + bar_width for x in r1]
# Crear un gráfico de barras verticales separadas
plt.bar(r1, df['Masculino'], color='blue', width=bar_width, edgecolor='grey', label='Masculino')
plt.bar(r2, df['Femenino'], color='pink', width=bar_width, edgecolor='grey', label='Femenino')
# Añadir etiquetas y título con texto más pequeño
plt.xlabel('Facultad', fontsize=10)
plt.ylabel('Población Estudiantil', fontsize=10)
plt.title('Población Estudiantil por facultad y sexo', fontsize=12)
# Configurar las etiquetas del eje x
plt.xticks([r + bar_width / 2 for r in r1], df['Facultad'], fontsize=8)
​
# Mostrar leyenda con texto más pequeño
plt.legend(fontsize=8)
​
# Mostrar el gráfico
plt.show()
# Datos de ejemplo
data_retiros = {
'Facultad': ['FAUA', 'FC', 'FIA', 'FIC', 'FIEE', 'FIEECS', 'FIGMM', 'FIIS', 'FIM', 'FIPGNP', 'FIQT'],
'Retiros': [214, 241, 138, 161, 316, 146, 127, 284, 196, 24, 135]
}
​
df_retiros = pd.DataFrame(data_retiros)
# Configuración de estilo de Seaborn (opcional)
sns.set(style="whitegrid")
# Configurar el ancho de las barras
bar_width = 0.35
# Calcular la posición de las barras
r = range(len(df_retiros['Facultad']))
​
# Crear un gráfico de barras verticales
plt.bar(r, df_retiros['Retiros'], color='red', width=bar_width, edgecolor='grey', label='Retiros')
# Añadir etiquetas y título con texto más pequeño
plt.xlabel('Facultad', fontsize=10)
plt.ylabel('Número de retiros parciales', fontsize=10)
plt.title('Número de retiros por facultad', fontsize=12)
# Configurar las etiquetas del eje x con texto más pequeño
plt.xticks([i for i in r], df_retiros['Facultad'], fontsize=8)
# Mostrar el gráfico
plt.show()
​