import dash
from dash import dcc
import pandas as pd
import mapbox
import plotly
import geojson
import ast
import dash
from dash.dependencies import Input, Output, State, ClientsideFunction
from dash import dcc
from dash import html, dash_table
import dash_bootstrap_components as dbc
import dash_daq as daq
import plotly as py
from plotly import graph_objs as go
from plotly.graph_objs import *
df = pd.DataFrame({
'x': [1, 2, 3],
'Lat': [37.774322, 37.777035, 37.773033],
'Long': [-122.489761, -122.485555, -122.491220]
})
layout = html.Div(
dcc.Graph(id="map"),
dcc.Input(id="inp")
)
@app.callback(
Output('map','figure'),
Input('inp','value')
)
def fin(val):
# do something
data = []
data.append({
"type": "scattermapbox",
"lat": df["Lat"],
"lon": df["Long"],
"name": "Location",
"showlegend": False,
"hoverinfo": "text",
"mode": "markers",
"clickmode": "event+select",
"customdata": df.loc[:,cd_cols].values,
"marker": {
"symbol": "circle",
"size": 8,
"opacity": 0.7,
"color": "black"
}
}
)
layout = {
"autosize": True,
"hovermode": "closest",
"mapbox": {
"accesstoken": MAPBOX_KEY,
"bearing": 0,
"center": {
"lat": xxx,
"lon": xxx
},
"pitch": 0,
"zoom": zoom,
"style": "satellite-streets",
},
}
return ({'data': data, 'layout': layout})
Uncaught (in promise) Error: A listener indicated an asynchronous response by returning true, but the message channel closed before a response was received
Uncaught (in promise) Error: There is already a source with this ID
at r.addSource (async-plotlyjs.js:2:1020888)
at i.addSource (async-plotlyjs.js:2:1219363)
at l.addSource (async-plotlyjs.js:2:2988732)
at async-plotlyjs.js:2:2989736
at h (async-plotlyjs.js:2:2989770)
at l.update (async-plotlyjs.js:2:2990100)
at b.updateData (async-plotlyjs.js:2:2338377)
at async-plotlyjs.js:2:2336961
My application renders a map and passes the
lat,longvalues from a pandas dataframe for plotly'sscattermapboxgraph object.I upgraded the
dashandplotlylibraries to the latest version2.7.1and5.13.0. I am not able to render the points on the map. I do not see any errors in the application logs. The only exceptions I see are JS in console.