微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用 Python 的交互式等值线地图

如何解决使用 Python 的交互式等值线地图

我找到了使用 https://www.naturalearthdata.com/downloads/110m-cultural-vectors/ 中的 shapefile 创建世界地图的代码 下载国家 v4.1.0

shapefile = 'data/countries_110m/ne_110m_admin_0_countries.shp'
datafile = 'data/obesity.csv'

gdf = gpd.read_file(shapefile)[['ADMIN','ADM0_A3','geometry']]
gdf.columns = ['country','country_code','geometry']
gdf.head()


    country                     country_code      geometry
0   Fiji                                 FJI      (polyGON ((180 -16.06713266364245,180 -16.555...
1   United Republic of Tanzania          TZA      polyGON ((33.90371119710453 -0.950000000000000...
2   Western Sahara                       SAH      polyGON ((-8.665589565454809 27.65642588959236...
3   Canada                               CAN      (polyGON ((-122.84 49.00000000000011,-122.974...
4   United States of America             USA      (polyGON ((-122.84 49.00000000000011,-120 49....

很多人使用这个文件,一切正常。 但是当我打开文件时,它只有一列'geometry'

KeyError: "['ADMIN','ADM0_A3'] not in index"

我不明白是文件有问题,还是代码有问题?

更新。我认为问题出在这错误上。有时这有效,有时出现此错误

DriverError: Unable to open ne_110m_admin_0_countries.shx or ne_110m_admin_0_countries.SHX. Set SHAPE_RESTORE_SHX config option to YES to restore or create it.

解决方法

您好像重命名了列:

gdf.columns = ['country','country_code','geometry']

其中 admin 现在是 countryADM0_A3 现在是 country_code

,

我解决了这个问题。要解决此错误 DriverError: Unable to open ne_110m_admin_0_countries.shx or ne_110m_admin_0_countries.SHX. Set SHAPE_RESTORE_SHX config option to YES to restore or create it. 我刚刚创建了一个包含 7 个不同格式的相同文件的文件夹:.cpg、.dbf、.prj、.README、.shp、.shx、.VERSION 并使用了该目录中的 .shp 文件,Jupyter 能够正确读取该文件的所有列。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 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”。这是什么意思?