Python 使用绝对位置将文本添加到叶贴图
我在Python程序中定义了:Python 使用绝对位置将文本添加到叶贴图,python,folium,Python,Folium,我在Python程序中定义了: fig = Figure(width, height) map = folium.Map(location=[y, x], zoom_start=2) fig.add_child(map) 如何使用绝对位置(不是纬度/经度)向地图添加文字? 由图形的宽度和高度的百分比定义的位置。 差不多 Text("Toto is my name", pos_x=0.1*width,pos_y=0.05*height) 我已经研究过了,它似乎没有这个功能,
fig = Figure(width, height)
map = folium.Map(location=[y, x], zoom_start=2)
fig.add_child(map)
如何使用绝对位置(不是纬度/经度)向地图添加文字?
由图形的宽度和高度的百分比定义的位置。
差不多
Text("Toto is my name", pos_x=0.1*width,pos_y=0.05*height)
我已经研究过了,它似乎没有这个功能,只要你有x,y坐标,你就可以很容易地注释文本。我通过参考和定制了它 来自folium.features导入DivIcon的
进口叶
m=folium.Map([34.0302,-118.2352],缩放开始=13)
叶标(
[34.0302, -118.2352],
图标=DivIcon(
图标大小=(250,36),
图标_锚=(0,0),
html='Toto是我的名字',
)
).将_添加到(m)
M
这是我的解决方案。
FloatImage为图像执行此任务。。。
所以我决定将我的文本转换成png,然后使用这种方法
from PIL import Image, ImageDraw, ImageFont
W, H = (300,200)
im = Image.new("RGBA",(W,H))
draw = ImageDraw.Draw(im)
msg = "pycoa.fr (data from: {})".format(mypandas.data_base)
w, h = draw.textsize(msg)
fnt = ImageFont.truetype('/Library/Fonts/Arial.ttf', 14)
draw.text((0,0), msg, font=fnt,fill=(0, 0, 0))
im.crop((0, 0,2*w,2*h)).save("pycoatextlogo.png", "PNG")
FloatImage("pycoatextlogo.png", bottom=0, left=0).add_to(map)
它并不完美,但很管用:)哇!非常棘手。
from PIL import Image, ImageDraw, ImageFont
W, H = (300,200)
im = Image.new("RGBA",(W,H))
draw = ImageDraw.Draw(im)
msg = "pycoa.fr (data from: {})".format(mypandas.data_base)
w, h = draw.textsize(msg)
fnt = ImageFont.truetype('/Library/Fonts/Arial.ttf', 14)
draw.text((0,0), msg, font=fnt,fill=(0, 0, 0))
im.crop((0, 0,2*w,2*h)).save("pycoatextlogo.png", "PNG")
FloatImage("pycoatextlogo.png", bottom=0, left=0).add_to(map)