为了账号安全,请及时绑定邮箱和手机立即绑定

PNG图像未显示在Folium地图上

PNG图像未显示在Folium地图上

拉丁的传说 2022-06-14 15:05:13
我从这里运行了这个在 folium 地图上显示图像的 folium 示例。我在我的 spyder 上运行了这个程序,虽然它在 jupyter 上运行良好import numpy as npimport pandas as pdimport numpy.ma as maimport foliumdef make_data():    x = np.linspace(-np.pi, np.pi, 101)    sin = np.sin(x)    cos = np.cos(x)    cos[20:50] = np.NaN    return pd.DataFrame(np.asanyarray([sin, cos]).T, columns=['sin', 'cos'], index=x)df = make_data()resolution, width, height = 75, 7, 3station = '42'lon, lat = -42, -21m = folium.Map(location=[lat, lon], zoom_start=5)import base64import matplotlib.pyplot as pltfig, ax = plt.subplots(figsize=(width, height))ax = df.plot(ax=ax, legend=False)ax.set_ylabel('Sea surface height (m)')png = 'mpld3_{}.png'.format(station)fig.savefig(png, dpi=resolution)encoded = base64.b64encode(open(png, 'rb').read())from folium import IFramehtml = '<img src="data:image/png;base64,{}">'.formatiframe = IFrame(html(encoded), width=(width*resolution)+20, height=(height*resolution)+20)popup = folium.Popup(iframe, max_width=2650)icon = folium.Icon(color="red", icon="ok")marker = folium.Marker(location=[lat-2, lon-1], popup=popup, icon=icon)marker.add_to(m)m.save('test.html')预期结果我的输出
查看完整描述

1 回答

?
SMILET

TA贡献1796条经验 获得超4个赞

使用folium-0.10.1,您只需修改这一行:

encoded = base64.b64encode(open(png, 'rb').read())

进入

encoded = base64.b64encode(open(png, 'rb').read()).decode()

你得到:

//img1.sycdn.imooc.com//62a833560001502d10940593.jpg

查看完整回答
反对 回复 2022-06-14
  • 1 回答
  • 0 关注
  • 247 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信