folium在地图上可以标N多个点。颜色样式什么的都可以自己选择。还可以显示自己的当前位置信息。但是,这个显示自己位置信息,定位不精准,不知道后面会不会找到更好的方法。
最后一段代码,是为了解决folium网页打开没有显示内容。网上抄的,具体什么意思我不清楚。
效果图:
【代码如下】
#用到的库
import folium
from folium.plugins import LocateControl #这个是显示当前位置。
import webbrowser #自动打开浏览器
#照片引入库
import exifread
import re
#m = folium.Map(location=[39.93, 115.40], zoom_start=12, tiles='Stamen Terrain')
#这里是选择用哪家的地图作为底层。我没有找到百度的,只有这两家
m=folium.Map([37.1639, 106.4400], #默认打开地图显示的位置
# tiles= 'https://wprd01.is.autonavi.com/appmaptile?x={x}&y={y}&z={z}&lang=zh_cn&size=1&scl=1&style=7',
# attr='高德-常规图',
tiles= 'https://rt0.map.gtimg.com/tile?z={z}&x={x}&y={-y}',
attr='腾讯图',
zoom_start=15,
)
#鼠标点击显示坐标
m.add_child(folium.LatLngPopup())
#显示自己当前位置
LocateControl().add_to(m)
#Marker就是在地图上标点的意思。包含了gps信息,显示在地图上的信息。颜色等等。
# 最后的add_to就把这个点加到地图上。
# folium.Marker(
# location=[GPS_jd, GPS_wd],
# popup='钱老三',
# icon=folium.Icon(color='red')
# ).add_to(m)
folium.Marker(
location=[37.1639, 106.4400],
popup='王老五 45345',
icon=folium.Icon(color='red')
).add_to(m)
folium.Marker(
location=[37.1660, 106.4450],
popup='张老三 123123',
icon=folium.Icon(color='red')
).add_to(m)
######这里的代码是保证可以打开网页,而且有内容。这一段我也不太懂,反正不影响我使用。
m.save('./test_08.html')
search_text = "cdn.jsdelivr.net"
replace_text = "gcore.jsdelivr.net"
#replace_text = "fastly.jsdelivr.net"
# 如果还是不行就把上面的注释取消掉
with open(r'test_08.html', 'r', encoding='UTF-8') as file:
data = file.read()
data = data.replace(search_text, replace_text)
with open(r'test_08.html', 'w', encoding='UTF-8') as file:
file.write(data)
webbrowser.open('test_08.html')
##########################################