# graficos-con-python
Gráficos con Python
Volver a la portada del cursoEjercicio Avanzado con Plotly
Sección 4 · Avanzando con Plotly
Ejercicio avanzado con Plotly
En este ejercicio llevas Plotly más allá del gráfico individual. Vas a construir gráficos interactivos con información al pasar el ratón, combinar varios gráficos en una sola figura y crear una animación que muestra cómo cambian los datos en el tiempo. Usarás el conjunto gapminder, que viene incluido en Plotly y no requiere descarga.
Gráficos ricos en información
Plotly Express permite codificar varias variables en un mismo gráfico: posición, color, tamaño y el texto que aparece al pasar el ratón. Un buen gráfico interactivo muestra lo esencial a simple vista y guarda el detalle para quien quiera explorar.
import plotly.express as px
df = px.data.gapminder()
d2007 = df[df["year"] == 2007]
fig = px.scatter(d2007, x="gdpPercap", y="lifeExp", size="pop", color="continent",
hover_name="country", log_x=True, size_max=45,
labels={"gdpPercap": "PIB per cápita", "lifeExp": "Esperanza de vida"},
title="Riqueza y esperanza de vida (2007)")
fig.write_html("burbujas.html")
print(d2007.shape)
Con log_x=True el eje horizontal usa escala logarítmica, que es la adecuada cuando los valores abarcan varios órdenes de magnitud, como el PIB per cápita.
Varios gráficos en una figura
Con make_subplots creas una cuadrícula de gráficos y añades cada serie en su celda con add_trace. Es la base para construir tableros sencillos.
import plotly.express as px
import plotly.graph_objects as go
from plotly.subplots import make_subplots
df = px.data.gapminder()
mexico = df[df["country"] == "Mexico"]
fig = make_subplots(rows=1, cols=2, subplot_titles=("Esperanza de vida", "Población"))
fig.add_trace(go.Scatter(x=mexico["year"], y=mexico["lifeExp"], mode="lines+markers",
name="Esperanza de vida"), row=1, col=1)
fig.add_trace(go.Bar(x=mexico["year"], y=mexico["pop"], name="Población"), row=1, col=2)
fig.update_layout(title="México en el tiempo", showlegend=False)
fig.write_html("subgraficos.html")
Animaciones
El parámetro animation_frame crea un fotograma por cada valor de una columna, normalmente el año, y agrega controles de reproducción. Fijar los rangos de los ejes con range_x y range_y evita que la escala cambie entre fotogramas y engañe a la vista.
Qué practicarás en el notebook
- Codificar tamaño, color y texto emergente en un gráfico de burbujas.
- Combinar líneas y barras con
make_subplots. - Animar la evolución de los países año por año.
- Exportar cada gráfico a HTML para compartirlo.
Errores comunes
- Animar sin fijar los rangos de los ejes: la escala salta en cada fotograma.
- Usar escala lineal para datos que abarcan varios órdenes de magnitud.
- Saturar el texto emergente con columnas que no aportan.
Cierre
Burbujas con varias variables, subgráficos y animaciones cubren la mayoría de los gráficos interactivos que necesitarás. Con esto tienes todas las piezas para el proyecto final.