import plotly.graph_objects as go
from plotly.subplots import make_subplots
import plotly.io as pio
import plotly.express as px
pio.templates.default = "seaborn"
import pandas as pd
import re
curvas_a_ocultar = ['Depreciación Implicita','Inflación Implicita','Depreciación Real Implicta']
Implicita_Fig = make_subplots(
rows=1, cols=1,
shared_xaxes=True,
vertical_spacing=0.03,
specs=[[{"type": "scatter"}]]
)
Implicita_Fig.add_trace(go.Scatter(x=Curva_CUI[(Curva_CUI.fecha == Fecha_Reporte) & (Curva_CUI.Plazo <= 20) ].Plazo,
y=Curva_CUI[(Curva_CUI.fecha == Fecha_Reporte) & (Curva_CUI.Plazo <= 20)].valor/100,
line = dict(color='red', width=4, dash='solid'),
name='CUI'),row=1, col=1)
Implicita_Fig.add_trace(go.Scatter(x=Curva_CUD[(Curva_CUD.fecha == Fecha_Reporte) & (Curva_CUD.Plazo <= 20) ].Plazo,
y=Curva_CUD[(Curva_CUD.fecha == Fecha_Reporte) & (Curva_CUD.Plazo <= 20)].valor/100,
line = dict(color='green', width=4, dash='solid'),
name='CUD'),row=1, col=1)
Implicita_Fig.add_trace(go.Scatter(x=Curva_ITLUP[(Curva_ITLUP.fecha == Fecha_Reporte) & (Curva_ITLUP.Plazo <= 20) ].Plazo,
y=Curva_ITLUP[(Curva_ITLUP.fecha == Fecha_Reporte) & (Curva_ITLUP.Plazo <= 20)].valor/100,
line = dict(color='blue', width=4, dash='solid'),
name='ITLUP'),row=1, col=1)
Implicita_Fig.add_trace(go.Scatter(x=Curvas[(Curvas.fecha_CUI == Fecha_Reporte) & (Curvas.Plazo_CUI <= 20) ].Plazo_CUI,
y=Curvas[(Curvas.fecha_CUI == Fecha_Reporte) & (Curvas.Plazo_CUI <= 20)].Depreciacion_Implicta/100,
line = dict(color='purple', width=4, dash='longdashdot'),
name='Depreciación Implicita'),row=1, col=1)
Implicita_Fig.add_trace(go.Scatter(x=Curvas[(Curvas.fecha_CUI == Fecha_Reporte) & (Curvas.Plazo_CUI <= 20) ].Plazo_CUI,
y=Curvas[(Curvas.fecha_CUI == Fecha_Reporte) & (Curvas.Plazo_CUI <= 20)].Inflacion_Implicta/100,
line = dict(color='orange', width=4, dash='dashdot'),
name='Inflación Implicita'),row=1, col=1)
Implicita_Fig.add_trace(go.Scatter(x=Curvas[(Curvas.fecha_CUI == Fecha_Reporte) & (Curvas.Plazo_CUI <= 20) ].Plazo_CUI,
y=Curvas[(Curvas.fecha_CUI == Fecha_Reporte) & (Curvas.Plazo_CUI <= 20)].Depreciación_real_Implicta/100,
line = dict(color='grey', width=4, dash='longdash'),
name='Depreciación Real Implicta',text=Curvas.Depreciación_real_Implicta),row=1, col=1)
Implicita_Fig.update_layout(
height=600,width=1500,
showlegend=True,
title_text="Curvas",
)
Implicita_Fig.layout.yaxis.tickformat = ',.1%'
Implicita_Fig.update_traces(texttemplate='%{text:,.2%}',textposition='top center')
Implicita_Fig.update_xaxes(showline=True, linewidth=0.1, linecolor='grey', mirror=True)
Implicita_Fig.update_yaxes(showline=True, linewidth=0.1, linecolor='grey', mirror=True)
Implicita_Fig.for_each_trace(lambda trace: trace.update(visible="legendonly")
if trace.name in curvas_a_ocultar else ())
Implicita_Fig.show()
Comments