¡Hola Estudiante, espero que estés bien!
Vamos a crear una animación con Plotly para comparar los datos de inmigración de Brasil y Argentina. Aquí tienes un ejemplo de cómo podrías estructurar tu código:
import pandas as pd
import plotly.graph_objects as go
# Datos de ejemplo
datos_brasil = {
'Año': [1980, 1985, 1990, 1995, 2000, 2005, 2010],
'Inmigrantes': [100, 150, 200, 250, 300, 350, 400]
}
datos_argentina = {
'Año': [1980, 1985, 1990, 1995, 2000, 2005, 2010],
'Inmigrantes': [120, 170, 220, 270, 320, 370, 420]
}
df_brasil = pd.DataFrame(datos_brasil)
df_argentina = pd.DataFrame(datos_argentina)
# Crear la figura
fig = go.Figure()
# Añadir trazas iniciales
fig.add_trace(go.Scatter(x=df_brasil['Año'], y=[0]*len(df_brasil), mode='lines', name='Inmigrantes Brasil'))
fig.add_trace(go.Scatter(x=df_argentina['Año'], y=[0]*len(df_argentina), mode='lines', name='Inmigrantes Argentina'))
# Crear frames para la animación
frames = [go.Frame(data=[
go.Scatter(x=df_brasil['Año'][:k+1], y=df_brasil['Inmigrantes'][:k+1]),
go.Scatter(x=df_argentina['Año'][:k+1], y=df_argentina['Inmigrantes'][:k+1])
]) for k in range(len(df_brasil))]
fig.frames = frames
# Configurar botones de reproducción
fig.update_layout(updatemenus=[{
'buttons': [
{
'args': [None, {'frame': {'duration': 500, 'redraw': True}, 'fromcurrent': True}],
'label': 'Play',
'method': 'animate'
}
],
'direction': 'left',
'pad': {'r': 10, 't': 87},
'showactive': False,
'type': 'buttons',
'x': 0.1,
'xanchor': 'right',
'y': 0,
'yanchor': 'top'
}])
# Configurar el diseño del gráfico
fig.update_layout(
title='Inmigración de Brasil y Argentina a lo largo de los años',
xaxis_title='Año',
yaxis_title='Número de inmigrantes'
)
fig.show()
Este código crea un gráfico animado con dos líneas, una para Brasil y otra para Argentina, y un botón de "Play" para iniciar la animación. Asegúrate de ajustar los datos reales en los diccionarios datos_brasil y datos_argentina.
Espero haber ayudado y buenos estudios!