Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python plotly choropleth不适用于geoJSONs_Python_Plotly_Gis_Geojson_Choropleth - Fatal编程技术网

Python plotly choropleth不适用于geoJSONs

Python plotly choropleth不适用于geoJSONs,python,plotly,gis,geojson,choropleth,Python,Plotly,Gis,Geojson,Choropleth,我正在尝试使用plotly choropleth绘制地图,比如说,对于意大利地图的每个特征区域,使用一个随机变量num。但是,它不起作用。下面是我使用的代码: 我已经从下载了意大利的GeoJson文件 我得到的是一个混合形状的地图如下,谁能让我知道我做错了什么,谢谢 我试着用来自我国家的数据做同样的事情,但遇到了同样的问题。我认为这些数据可能无法通过绘图读取。如果您查看网站的地图演示,会发现有几个javascript脚本正在运行以创建地图。他们可能已经将geojson转换为自定义格式,因此您必须

我正在尝试使用plotly choropleth绘制地图,比如说,对于意大利地图的每个特征区域,使用一个随机变量num。但是,它不起作用。下面是我使用的代码:

我已经从下载了意大利的GeoJson文件

我得到的是一个混合形状的地图如下,谁能让我知道我做错了什么,谢谢


我试着用来自我国家的数据做同样的事情,但遇到了同样的问题。我认为这些数据可能无法通过绘图读取。如果您查看网站的地图演示,会发现有几个javascript脚本正在运行以创建地图。他们可能已经将geojson转换为自定义格式,因此您必须使用他们的javascript服务来创建一个可理解的映射


后来我发现了一组不同的数据,并且能够使用与原始数据不兼容的完全相同的代码轻松地创建一个chorpleth地图。希望您能找到一个可以使用的不同数据集。政府通常会提供关于人口普查地区、省/州边界等的公开数据。

我曾尝试用我国的数据做同样的事情,但也遇到了同样的问题。我认为这些数据可能无法通过绘图读取。如果您查看网站的地图演示,会发现有几个javascript脚本正在运行以创建地图。他们可能已经将geojson转换为自定义格式,因此您必须使用他们的javascript服务来创建一个可理解的映射

后来我发现了一组不同的数据,并且能够使用与原始数据不兼容的完全相同的代码轻松地创建一个chorpleth地图。希望您能找到一个可以使用的不同数据集。政府通常会提供关于人口普查地区、省/州边界等的公开数据

import random
import pandas as pd
import plotly.express as px
import plotly.io as pio
import json
pio.renderers.default='browser'

with open('it-all.geo.json') as f:
     geojson = json.load(f)

n_provinces = len(geojson['features'])

province_names = [geojson['features'][k]['properties']['name'] for k in range(n_provinces)]

randomlist = []
for i in range(0,110):
    n = random.randint(1,30)
    randomlist.append(n)

datadata = pd.DataFrame({'province':province_names, 'num':randomlist}) 

fig = px.choropleth(datadata, geojson=geojson, color="num",
                    locations="province", featureidkey="properties.name",
                    color_continuous_scale="Viridis")

fig.show()