在我下面的脚本中,Folium绘图返回'TypeError: Object of type int64 is not JSON serializable‘。脚本的最后一行似乎有问题,因为当我注释它时,它会运行,但当我取消注释它时,我会得到TypeError。我需要将文件绘制为html或jpg。
import pandas as pd
import folium
from folium.plugins import HeatMap
from folium.plugins import MarkerCluster
for_map = pd.read_csv('datasets/sum_loads.csv')
max_amount = float(for_map['total_offs_sum'].max())
hmap = folium.Map(location=[51.5, -0.1], zoom_start=7)
hm_wide = HeatMap( list(zip(for_map.latitude.values, for_map.longitude.values, for_map.total_offs_sum.values)),
min_opacity=0.2,
max_val=max_amount,
radius=17, blur=12,
max_zoom=1,
)
hmap.add_child(hm_wide)
locations = list(zip(for_map.latitude, for_map.longitude))
cluster = MarkerCluster(locations)
hmap.add_child(cluster)
hm_wide.save('output_plot.html')
发布于 2020-06-10 17:23:22
与克里斯蒂安的建议一致,你的for_map.total_offs_sum.values很可能是整数。试着把它转换成浮点数。例如
hm_wide = HeatMap(list(zip(for_map.latitude.values, for_map.longitude.values,for_map.total_offs_sum.values.astype(float))),
min_opacity=0.2,
max_val=max_amount,
radius=17, blur=12,
max_zoom=1,
)
https://stackoverflow.com/questions/60243592
复制相似问题