如何使用带有卫星视图的 plotly python 从 pandas 数据框中标记点(使用纬度和经度)

how to mark points(using latitude and longitude) from pandas data frame using plotly python with satellite view

我想在 pandas 数据框中使用带有卫星视图的 plotly python 标记点(使用纬度和经度)。 样品 df:

    device  GPSTime     GPSLat       GPSLng
    101    1614956574   16.94469    29.8267
    102    1615271467   16.94503    29.83
    103    1615271488   16.94553    29.83

我使用 Plotly 绘制了数据,但没有获得卫星视图。有什么办法可以得到卫星视图吗?

我的代码:

import plotly.express as px 
fig = px.scatter_mapbox(dfL, lat="GPSLat", lon="GPSLng", zoom=15, height=500,width=1000,color="device")
fig.update_layout(mapbox_style="open-street-map") 
fig.show()

当前视图: enter image description here

但是我需要在卫星图像上绘制这些数据吗?有什么办法可以得到卫星视图吗?

首先,如果要使用mapbox,需要获取mapbox的APIKey。一旦你有了APIKey,你就可以使用下面的代码来绘制指定样式的卫星图像了。

import plotly.express as px

px.set_mapbox_access_token(open("mapbox_api_key.txt").read())
fig = px.scatter_mapbox(df,
                        lat=df.GPSLat,
                        lon=df.GPSLng,
                        hover_name="device",
                        height=500, width=1000,
                        zoom=15, mapbox_style='satellite')

fig.show()