# Importar libreríasimport pandas as pdimport matplotlib.pyplot as pltfrom plotnine import ggplot, aes, geom_point, geom_smooth, theme_minimal# Cargar datosdf = pd.read_csv("https://raw.githubusercontent.com/mwaskom/seaborn-data/master/mpg.csv")# Crear gráfico con los nombres correctos de las columnasplot = (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 RMarkdownplot.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: Gráficos Interactivos en SVG
📌 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.
import pygal# Crear un gráfico de barrasbar_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 SVGbar_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: Mapas Interactivos con Leaflet.js
📌 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.
import folium# Crear mapa centrado en una ubicaciónmapa = folium.Map(location=[19.4326, -99.1332], zoom_start=10);# Agregar marcadores con información emergentefolium.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 HTMLmapa.save("mapa_interactivo.html")
📌 Este mapa incluye:
✅ Ubicaciones clave en México.
✅ Marcadores con información emergente.
✅ Generación de un archivo HTML interactivo.
📌 Comparación de las Librerías
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.
Conclusión
📌 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.