更新 folium 更改了弹出框宽度

Meh*_*mud 5 python popup python-3.x leaflet folium

最近我将 folium 从 0.5.0 更新到 0.11.0,此后我遇到了弹出框的问题。随着更新,弹出框的宽度似乎有所缩小,并且文本以单独的行出现,这恰好与前一版本的 folium 出现在同一行中。代码没有进行任何更改。

之前的图像

当前图像

如何将弹出框更改为与前一个一样,即文本不换行?

弹出框代码:

fgc.add_child(folium.Marker(location=[lt, ln], popup= "<h4> <b>Thana :&nbsp" + di +"</h4></b>"+ "<br><b>Cases Total: &nbsp: </b>"+str(ca)+ " person "+ "<br>" + "<b>Cases 24 hours : </b>"+ str(da)+ " person "+"<br>"+"<b>Cases 7 days: </b>"+str(we)+ " person "+"<br><b>Neighbouhood affected :  </b>"+str(ne)
Run Code Online (Sandbox Code Playgroud)

小智 9

我处理这个问题的方法是创建一个 IFrame 来处理数据帧变量,然后将其传递给弹出类,这应该适用于数据库或数据帧。

for (index, row) in df.iterrows():
if row.loc['BRANCH'] == 1:
    iframe = folium.IFrame('Account#:' + str(row.loc['ACCT']) + '<br>' + 'Name: ' + row.loc['NAME'] + '<br>' + 'Terr#: ' + str(row.loc['TERR']))
    popup = folium.Popup(iframe, min_width=300, max_width=300)
    folium.Marker(location=[row.loc['LAT'], row.loc['LON']], icon=folium.Icon(color=row.loc['COLOR'], icon='map-marker', prefix='fa'), popup=popup).add_to(map1)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述


sen*_*nce 5

如果没有可复制的代码,就不可能为您提供量身定制的解决方案。作为一般建议,您可以使用和参数folium.Popup()的组合来强制弹出窗口的宽度。min_widthmax_width

例如:

import folium

m = folium.Map(location=[43.775, 11.254],
               zoom_start=5)

html = '''1 aaaaaaaaaaaaaaaaaa aaaa aaa aa aaaaa aaa aaaa a a a a<br>2 aaaaaaaaaa aaa aaaaa aaaaa<br>3 aaaaa aaaaaa aaaaa aaa aaaaa<br>4 aaa aaa aaaaaaaa
'''

iframe = folium.IFrame(html)
popup = folium.Popup(iframe,
                     min_width=500,
                     max_width=500)


marker = folium.Marker([43.775, 11.254],
                       popup=popup).add_to(m)
m
Run Code Online (Sandbox Code Playgroud)

你得到:

在此输入图像描述