python - Plotly go.Choroplethmapbox 不显示颜色
问题描述
我正在尝试去做。Choroplethmapbox 但无论我做什么,结果都是空白的。
orlando_geo = 'https://github.com/alisongh/MADS/blob/main/SIADS%20591/data/city_orlando.geojson'
fig = go.Figure(go.Choroplethmapbox(geojson=orlando_geo, featureidkey='properties.name', locations=Dominating_type_df.zipcode, z=Dominating_type_df.score_level, colorscale="Viridis", zmin=0, zmax=150,
marker_opacity=0.5, marker_line_width=0))
fig.update_layout(mapbox_style="carto-positron",
mapbox_zoom=11, mapbox_center = {"lat": 28.5384, "lon": -81.3789})
fig.update_layout(margin={"r":0,"t":0,"l":0,"b":0})
fig.show()
数据框看起来像这样
指数 | 邮政编码 | 支配型 | score_level | 纬度 | 经度 |
---|---|---|---|---|---|
0 | 32789 | 亚洲人 | 65.51 | 28.5978 | -81.3534 |
1 | 32792 | 北美 | 12.25 | 28.5974 | -81.3036 |
这就是我得到的:
更新
根据答案,我更正了 URL 地址,更新了 plotly 版本并转换了一些格式。但是,它仍然给了我一张空白地图。
orlando_geo = 'https://raw.githubusercontent.com/alisongh/MADS/main/SIADS%20591/data/city_orlando.geojson'
fig = go.Figure(go.Choroplethmapbox(geojson=orlando_geo, featureidkey='properties.name', locations=Dominating_type_df.zipcode, z=Dominating_type_df.score_level, colorscale="Viridis", zmin=0, zmax=150,
marker_opacity=0.5, marker_line_width=0))
fig.update_layout(mapbox_style="carto-positron",
mapbox_zoom=11, mapbox_center = {"lat": 28.5384, "lon": -81.3789})
fig.update_layout(margin={"r":0,"t":0,"l":0,"b":0})
fig.show()
df.dtypes
zipcode 30 non-null int32
Dominating_type 30 non-null object
score_level 30 non-null float64
latitude 30 non-null float64
longitude 30 non-null float64
Python的版本
import sys
print(sys.version)
3.9.6 (tags/v3.9.6:db3ff76, Jun 28 2021, 15:26:21) [MSC v.1929 64 bit (AMD64)
情节的版本
import plotly
plotly.__version__
5.3.1
解决方案
geopandas URL 用于在 Github 上显示,因此实际数据 URL 是从RAW按钮获取的 URL。
错误的网址:
orlando_geo = 'https://github.com/alisongh/MADS/blob/main/SIADS%20591/data/city_orlando.geojson'
正确的网址:
orlando_geo = 'https://raw.githubusercontent.com/alisongh/MADS/main/SIADS%20591/data/city_orlando.geojson'
import plotly.graph_objects as go
import pandas as pd
import numpy as np
import io
data = '''
index zipcode Dominating_type score_level latitude longitude
0 32789 Asian 65.51 28.5978 -81.3534
1 32792 "North American" 12.25 28.5974 -81.3036
'''
Dominating_type_df = pd.read_csv(io.StringIO(data), delim_whitespace=True)
Dominating_type_df['zipcode'] = Dominating_type_df['zipcode'].astype(str)
print(Dominating_type_df)
orlando_geo = 'https://raw.githubusercontent.com/alisongh/MADS/main/SIADS%20591/data/city_orlando.geojson'
fig = go.Figure(go.Choroplethmapbox(geojson=orlando_geo,
featureidkey='properties.name',
locations=Dominating_type_df.zipcode,
z=Dominating_type_df.score_level,
colorscale="Viridis",
zmin=0, zmax=150,
marker_opacity=0.5,
marker_line_width=1)
)
fig.update_layout(mapbox_style="carto-positron",
mapbox_zoom=11, mapbox_center = {"lat": 28.5384, "lon": -81.3789})
fig.update_layout(margin={"r":0,"t":0,"l":0,"b":0})
fig.show()
推荐阅读
- nginx - 使用白名单时 nginx 速率限制不起作用的问题
- windows - Sony Spresense SDK -VS 代码扩展 - 无效参数 # 包括
关于 HelloWorld 的全新构建 - python - 如何在没有打印功能的情况下工作返回?
- python - 应用程序来拉环境。本地运行时的变量,但在 ECS 集群上运行时的 EC2 实例凭据?
- java - Java Generic 从 Activity 到 Fragment 到 Adapter
- r - 在 R 中制作字符序列的最聪明方法
- git - Git 帮助:如何重置 git?不是分支,而是所有 git?
- java - 如何创建这些矩阵?
- amazon-web-services - 是否需要在外部网站中为 AWS Cloudfront 进行配置?
- git - 如何将 .flutter-plugins-dependencies 放在 gitignore 中?