类型错误:“MultiPolygon”对象不可使用 Plotly Choropleth 进行迭代

问题描述 投票:0回答:1

我正在尝试使用此示例从县级 FIPS 数据制作分区统计图。

import plotly.figure_factory as ff

import numpy as np
import pandas as pd

df_sample = pd.read_csv('https://raw.githubusercontent.com/plotly/datasets/master/minoritymajority.csv')
df_sample_r = df_sample[df_sample['STNAME'] == 'Florida']

values = df_sample_r['TOT_POP'].tolist()
fips = df_sample_r['FIPS'].tolist()

endpts = list(np.mgrid[min(values):max(values):4j])
colorscale = ["#030512","#1d1d3b","#323268","#3d4b94","#3e6ab0",
              "#4989bc","#60a7c7","#85c5d3","#b7e0e4","#eafcfd"]
fig = ff.create_choropleth(
    fips=fips, values=values, scope=['Florida'], show_state_data=True,
    colorscale=colorscale, binning_endpoints=endpts, round_legend_values=True,
    plot_bgcolor='rgb(229,229,229)',
    paper_bgcolor='rgb(229,229,229)',
    legend_title='Population by County',
    county_outline={'color': 'rgb(255,255,255)', 'width': 0.5},
    exponent_format=True,
)
fig.layout.template = None
fig.show()

当我按原样运行此代码时,我得到 TypeError: 'MultiPolygon' object is not iterable.

我在一年前的这篇post中看到,建议要么降级 Shapely,但我仍然无法工作,或者“访问 MultiPolygon 的‘geoms’属性”。我是处理绘图和地理数据的新手,发现这个答案不直观。我想知道是否有人可以建议如何编辑代码以使其工作,或者是否有其他方法来解决这个问题?

python plotly shapely choropleth
1个回答
0
投票

create_choropleth
函数已经被弃用了很长一段时间,并且用于它的plotly-geo的最后一次更新是在5年前,所以我会寻找另一个解决方案。

plotly.express 中现在可以绘制等值线图。详细的示例列表可以在这里找到。

© www.soinside.com 2019 - 2024. All rights reserved.