Black Lives Matter. Please consider donating to Black Girls Code today.

Help with Choroplethmapbox and JSON file in Python and Plotly

Good morning friends, I have a problem and would like help from you.
I am graphing a Choroplethmapbox with python offline, but my base file of the JSON format map is too heavy approximately 400 mb and the offline html file weighs almost the same, so I cannot load the final file generated for visualization by weight represents. I would greatly appreciate your support in order to reduce the weight of the JSON or what you could do to be able to view this file, the JSON generated it with the QGIS.
This is my code:

import json
filename = ‘prueba.json’
with open(filename) as f:
datosqgis = json.load(f)

import pandas as pd
df = pd.read_csv(“datos_borrador.csv”,
dtype={“id”: str})

import plotly.graph_objects as go
from plotly import offline

layout = go.Layout(title_text =‘DSE OSINERGMINMapa de densidad de descargas’,
title_x =0.05, title_y =0.9, width=1250, height=625)

fig = go.Figure(go.Choroplethmapbox(geojson=datosqgis, locations=df.id, z=df.valor_1,
colorscale=“YlOrRd”, zmin=0, zmax=df[‘valor_1’].max(),
marker_opacity=0.5, marker_line_width=0,
colorbar = dict(title=‘Intensidad
(Densidad)’,
thickness=20, ticklen=3),
hovertemplate = ‘Densidad de descargas: %{z} veces/periodo’+
‘’), layout =layout)

fig.update_layout(mapbox_style=“carto-positron”,
mapbox_zoom=4.5, mapbox_center = {“lat”: -9.433686, “lon”: -74.266863})
fig.update_layout(margin={“r”:0,“t”:0,“l”:0,“b”:0})

offline.plot(fig, filename=‘mapa_ceraunico.html’)