jupyter上的大叶空白脉络图,可能是JSON格式问题

如何解决jupyter上的大叶空白脉络图,可能是JSON格式问题

我一直在积极尝试找出为什么在尝试在大叶上生成Choropleth映射时在Jupyter笔记本上插入空白映射的原因。这也是我的第一篇帖子,因为我对编程还很陌生。

通过搜索在线资源,最常见的问题是不正确的key_on用法,但是我不认为是这种情况,它可能是与foliumepsg = 4326)相对的JSON格式不正确。

https://raw.githubusercontent.com/CyperPunk001/Immigration-to-CA-from-RSA/master/canada_provinces.geojson 这是我用于笔记本的github存储库中的JSON文件,我不确定这是什么格式?

Canada COVID 19 cases这是我在笔记本电脑上用于大叶的当前数据帧。

folium code for choropleth map这是我正在使用的当前小叶代码,用于生成活动COVID 19案例与省/地区的Choropleth映射。问题是我每次都会得到一张空白地图。

到目前为止,我已经尝试过:

  1. 导入Json并将我的数据框“ prname”列名称替换为实际的Json feature.properties.name省/地区名称。这不能解决我的问题。

  2. 将“ prname”重命名为“ name”。这没有解决我的问题。

  3. 检查“ name”,“ numactive”列的dtype是否正确,这是否可以解决dtypes of dataframe

  4. 这使我看到也许我导入的JSON文件与大叶草格式不兼容,所以我尝试导入geopandas,或更确切地说是安装,但是可惜我也经常遇到导入错误。我没有运气就尝试了所有代码行。 geopandas conda install

当前的叶版本0.11.0

任何帮助将不胜感激。

解决方法

好问题。使用R和传单库完成此图。

.geojson文件没有问题。我将您的.geojson数据复制并粘贴到记事本文本编辑器中,然后以.geojson扩展名保存。已读取文件,并且已对文件进行了打印,没有出现问题(未显示)。

使用此.geojson文件,我从文件的@data插槽中名为“ name”的变量中创建了标签。我还从@data插槽中的X_2012_membership值创建了填充颜色。

我使用Jupyter Lab作为带有R内核的IDE。代码如下:

获取数据,探索数据:

int theDayindex=0;
String weekDay[]={"maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag","zondag"};
String theDaydisplay=weekDay[theDayindex];
    theDaydisplay=weekDay[theDayindex];
    theDayindex++;
    if(theDayindex>=6){
      theDayindex=0;
    }

创建标签并填充颜色

dg <- rgdal::readOGR("C:/python/R_files/test/test.geojson")
# str(dg,max.level = 2)
head(dg@data,2)
head(dg@data$name,2)

绘制数据:

labs <- dg@data$name
fill_col <- colorFactor(topo.colors(5),unique(dg@data$X_2012_membership ))

链接上的图: Canada

,

我设法解决了这个问题-好像是因为标题用双引号而不是单引号引起了,地图显示为空白。 简单更改后,地图将完美显示! 只是显示出像这样的细节遗漏会如何导致...

之前: 参见上面的叶代码示例。

之后:

m = folium.Map(location=[56.130,-106.35],zoom_start=3.5,tiles = "Mapbox Bright")
m.choropleth(
 geo_data=world_geo,name='choropleth',data=can_cov_yes_df,columns=['name','numactive'],key_on='feature.properties.name',fill_color='YlOrRd',threshold_scale=threshold_scale,fill_opacity=0.7,line_opacity=0.2,legend_name='Active Cases in Canadadian provinces'
)
folium.LayerControl().add_to(m)
m

现在地图显示:

choroplet map

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?
Java在半透明框架/面板/组件上重新绘画。
Java“ Class.forName()”和“ Class.forName()。newInstance()”之间有什么区别?
在此环境中不提供编译器。也许是在JRE而不是JDK上运行?
Java用相同的方法在一个类中实现两个接口。哪种接口方法被覆盖?
Java 什么是Runtime.getRuntime()。totalMemory()和freeMemory()?
java.library.path中的java.lang.UnsatisfiedLinkError否*****。dll
JavaFX“位置是必需的。” 即使在同一包装中
Java 导入两个具有相同名称的类。怎么处理?
Java 是否应该在HttpServletResponse.getOutputStream()/。getWriter()上调用.close()?
Java RegEx元字符(。)和普通点?