gpt4 book ai didi

python - ValueError : Unhandled object <_io. TextIOWrapper名称='world.json'模式='r'编码='utf-8-sig'>

转载 作者:太空宇宙 更新时间:2023-11-03 14:17:17 26 4
gpt4 key购买 nike

我正在尝试使用 GeoJson 多边形颜色功能更改国家/地区的颜色。

这是给我一个错误的代码。

import folium
import pandas

data = pandas.read_csv("Volcanoes_USA.txt")
lat = list(data["LAT"])
lon = list(data["LON"])
elev = list(data["ELEV"])

def color_producer(elevation):
if elevation < 1000:
return 'green'
elif 1000 <= elevation < 3000:
return 'orange'
else:
return 'red'

map = folium.Map(location=[38.58,-99.09], zoom_start=6, tiles="Mapbox Bright")

fg = folium.FeatureGroup(name="My Map")

for lt,ln,el in zip(lat, lon, elev):
fg.add_child(folium.CircleMarker(location=[lt, ln], radius = 6, popup=str(el)+ " m", color = color_producer(el), fill_color= 'grey', fill_opacity=1.15))

fg.add_child(folium.GeoJson(data=open('world.json','r', encoding='utf-8-sig'),
style_function = lambda x: {'fillColour':'yellow'}))

最后两行会产生以下错误消息:

> > Traceback (most recent call last):   File "map1.py", line 25, in <module>
> style_function = lambda x: {'fillColour':'yellow'})) File "/Users/g_wauns/anaconda3/lib/python3.6/site-packages/folium/features.py",
> line 495, in __init__
> raise ValueError('Unhandled object {!r}.'.format(data)) ValueError: Unhandled object <_io.TextIOWrapper name='world.json'
> mode='r' encoding='utf-8-sig'>.

由于我是编码新手,所以我不知道这意味着什么。

最佳答案

查看[GitHub]: (master) folium/folium/features.py:343 (此时此刻),看起来 folium.GeoJson 构造函数只能处理(针对您的场景):

  1. 文件名称
  2. Python 字典

因此,解决此问题的最简单方法是仅传递文件名:

fg.add_child(folium.GeoJson("world.json", style_function=lambda x: {"fillColour": "yellow"}))

当然,您可以自己将文件读入字典(使用 [Python]: json — JSON encoder and decoder 模块),但这正是上面文件下面大约 20 行的作用。

关于python - ValueError : Unhandled object <_io. TextIOWrapper名称='world.json'模式='r'编码='utf-8-sig'>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48171347/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com