<p>看起来您缺少底部的<strong>fig.show()</strong>,而顶部的<strong>导入plotly.graph\u对象为go</strong>。下面的代码将打开一个映射,但choropleth值需要数据。您的代码示例中有df,但没有包含csv。如果您想使用代码中的df,请导入pandas,并从csv创建一个名为df的数据帧。这里有一个链接可以帮助您实现这一点<a href="https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.html" rel="nofollow noreferrer">Pandas dataframes</a></p>
<pre><code>import json
import plotly.graph_objects as go
with open(r'{insert file path here}.geojson') as f:
counties = json.load(f)
fig = go.Figure(go.Choroplethmapbox(
geojson=counties,
colorscale="Viridis", zmin=0, zmax=100,
marker_opacity=0.5, marker_line_width=0))
fig.update_layout(mapbox_style="carto-positron",
mapbox_zoom=3, mapbox_center = {"lat": 37.0902, "lon": -95.7129})
fig.update_layout(margin={"r":0,"t":0,"l":0,"b":0})
fig.show()
</code></pre>
<p>下面是一个在json中使用pandas的示例。下面代码的进一步解释可以在<a href="https://plot.ly/python/mapbox-county-choropleth/" rel="nofollow noreferrer">here</a></p>
<pre><code>from urllib.request import urlopen
import json
with urlopen('https://raw.githubusercontent.com/plotly/datasets/master/geojson-counties-fips.json') as response:
counties = json.load(response)
import pandas as pd
df = pd.read_csv("https://raw.githubusercontent.com/plotly/datasets/master/fips-unemp-16.csv",
dtype={"fips": str})
import plotly.express as px
fig = px.choropleth(df, geojson=counties, locations='fips', color='unemp',
color_continuous_scale="Viridis",
range_color=(0, 12),
scope="usa",
labels={'unemp':'unemployment rate'}
)
fig.update_layout(margin={"r":0,"t":0,"l":0,"b":0})
fig.show()
</code></pre>