Ejemplo de visualizaciones.
📢 Python ofrece una amplia variedad de librerías para la visualización de datos, cada una con características únicas que las hacen ideales para diferentes casos de uso.
📌 En esta publicación exploraremos tres opciones potentes:
✅ Plotnine: Basado en la gramática de gráficos de ggplot2.
✅ Pygal: Permite generar gráficos interactivos en SVG.
✅ Folium: Facilita la creación de mapas interactivos con Leaflet.js.
Veamos cómo utilizarlas con ejemplos más avanzados. 🚀
📌 Plotnine es la implementación de la gramática de gráficos en Python, similar a ggplot2 en R.
✅ Facilita la construcción de gráficos mediante capas.
✅ Permite un alto grado de personalización.
✅ Compatible con Pandas y NumPy.
🔗 Documentación: Plotnine en GitHub
# Importar librerías
import pandas as pd
import matplotlib.pyplot as plt
from plotnine import ggplot, aes, geom_point, geom_smooth, theme_minimal
# Cargar datos
df = pd.read_csv("https://raw.githubusercontent.com/mwaskom/seaborn-data/master/mpg.csv")
# Crear gráfico con los nombres correctos de las columnas
plot = (ggplot(df, aes(x='displacement', y='mpg')) + # Cambiamos hwy -> mpg
geom_point(color="blue") +
geom_smooth(method='lm', color="red", se=True) +
theme_minimal())
# Mostrar gráfico en RMarkdown
plot.draw()
#plt.show()
# Guardar el gráfico como imagen
#plot.save("plotnine_output.png", dpi=300)
📌 En este gráfico:
✅ Se representa la relación entre el desplazamiento del motor y la eficiencia en carretera.
✅ Se añade una línea de regresión con un intervalo de confianza.
✅ El estilo minimalista mejora la legibilidad.
📌 Pygal permite generar gráficos interactivos en formato SVG, ideales para web.
✅ Ligero y fácil de usar.
✅ Ideal para dashboards interactivos.
✅ Compatible con Flask y Django.
🔗 Documentación: Pygal en GitHub
import pygal
# Crear un gráfico de barras
bar_chart = pygal.Bar()
bar_chart.title = "Comparación de Consumo de Combustible"
bar_chart.add("Ciudad", [15, 18, 20, 22, 24]);
bar_chart.add("Carretera", [20, 24, 28, 30, 32]);
bar_chart.x_labels = ["Toyota", "Ford", "BMW", "Tesla", "Honda"]
# Guardar como archivo SVG
bar_chart.render_to_file("barras.svg")
📌 Este gráfico incluye:
✅ Comparación entre consumo en ciudad y carretera.
✅ Formato interactivo que se puede usar en web.
✅ Se genera en un archivo SVG optimizado.
📌 Folium es la mejor opción para crear mapas interactivos en Python con Leaflet.js.
✅ Fácil integración con datos geoespaciales.
✅ Permite superponer datos sobre mapas de OpenStreetMap.
✅ Compatible con Pandas y GeoJSON.
🔗 Documentación: Folium en GitHub
import folium
# Crear mapa centrado en una ubicación
mapa = folium.Map(location=[19.4326, -99.1332], zoom_start=10);
# Agregar marcadores con información emergente
folium.Marker([19.4326, -99.1332], popup="Ciudad de México").add_to(mapa);
folium.Marker([20.6597, -103.3496], popup="Guadalajara").add_to(mapa);
# Guardar mapa en HTML
mapa.save("mapa_interactivo.html")
📌 Este mapa incluye:
✅ Ubicaciones clave en México.
✅ Marcadores con información emergente.
✅ Generación de un archivo HTML interactivo.
Librería Tipo de gráficos Mejor uso Compatibilidad
0 Plotnine Estáticos Exploración de datos Pandas, NumPy
1 Pygal Interactivos SVG Visualización web Django, Flask
2 Folium Mapas Análisis geoespacial GeoJSON, Pandas
📌 Resumen de diferencias entre librerías:
✅ Plotnine es ideal para visualizaciones estáticas y exploración de datos.
✅ Pygal destaca en gráficos interactivos que se pueden incrustar en web.
✅ Folium permite trabajar con datos geoespaciales de manera sencilla.
📌 Cada una de estas librerías tiene un caso de uso ideal:
✅ Si buscas gráficos al estilo ggplot2, usa Plotnine.
✅ Si necesitas gráficos interactivos en web, Pygal es una excelente opción.
✅ Si trabajas con mapas, Folium te permitirá visualizar datos geoespaciales de forma interactiva.