如果你想在地图上显示标注点并在标注点旁边显示文字,可以使用folium.Markerpopup参数来实现。这个参数允许你设置在标注点上点击时显示的文本内容。以下是修改后的示例代码,演示如何在地图上显示带有文字标注的标注点:

import folium

# 创建一个地图中心在上海的地图对象
shanghai_map = folium.Map(location=[31.2304, 121.4737], zoom_start=12)

# 定义要标记的经纬度坐标点及文字内容
locations = [
    {"name": "上海市人民广场", "coordinates": [31.2304, 121.4737], "text": "这里是人民广场"},
    {"name": "上海东方明珠", "coordinates": [31.2423, 121.4958], "text": "这里是东方明珠"},
    {"name": "陆家嘴金融中心", "coordinates": [31.2373, 121.5015], "text": "这里是陆家嘴"}
]

# 在地图上添加标记
for loc in locations:
    folium.Marker(location=loc["coordinates"], popup=loc["text"]).add_to(shanghai_map)

# 保存地图为HTML文件
shanghai_map.save("shanghai_map_with_text.html")

# 打开地图文件(可选)
import webbrowser
webbrowser.open("shanghai_map_with_text.html")

在这个示例中,我们在定义经纬度坐标点的同时,添加了一个text字段,用来存储每个地点的描述文本。然后,在使用folium.Marker添加标记点时,将这个文本内容作为popup参数传递给标记点对象,这样当你点击标记点时,就会显示出对应的文字描述。

运行这段代码后,会生成一个名为shanghai_map_with_text.html的HTML文件,其中包含了上海地图和标注点,点击标注点可以看到显示的文字内容。

一直展示文字

如果你希望在地图上直接展示文字描述,而不是通过点击标记点才显示,可以考虑使用folium.Markertooltip参数。这样可以让文字描述一直显示在标记点附近,而不需要用户进行交互点击。

以下是修改后的示例代码,演示如何在地图上显示标注点并一直展示文字描述:

import folium

# 创建一个地图中心在上海的地图对象
shanghai_map = folium.Map(location=[31.2304, 121.4737], zoom_start=12)

# 定义要标记的经纬度坐标点及文字内容
locations = [
    {"name": "上海市人民广场", "coordinates": [31.2304, 121.4737], "text": "这里是人民广场"},
    {"name": "上海东方明珠", "coordinates": [31.2423, 121.4958], "text": "这里是东方明珠"},
    {"name": "陆家嘴金融中心", "coordinates": [31.2373, 121.5015], "text": "这里是陆家嘴"}
]

# 在地图上添加标记
for loc in locations:
    folium.Marker(location=loc["coordinates"], tooltip=loc["text"]).add_to(shanghai_map)

# 保存地图为HTML文件
shanghai_map.save("shanghai_map_with_tooltip.html")

# 打开地图文件(可选)
import webbrowser
webbrowser.open("shanghai_map_with_tooltip.html")

在这个示例中,我们将文字描述存储在text字段中,并使用folium.Markertooltip参数来设置文字内容。这样地图加载后,每个标记点附近都会显示对应的文字描述。

运行这段代码后,生成的shanghai_map_with_tooltip.html文件将包含上海地图和标注点,每个标注点旁边都会显示出指定的文字描述。

作者:若之卿

物联沃分享整理
物联沃-IOTWORD物联网 » python 地图+经纬度标记

发表回复