Folium Python 指向其他分界上方的框架
Folium Python points frames above the other demarcations
我需要帮助我需要我正在尝试在 folium 中绘制地理定位点我已经提取了带有每个街区名称的坐标列,数据来自 geojson,其中包含哥伦比亚波哥大街区的坐标,数据如下:https://mapas.bogota.gov.co/?l=654&e=-74.1863908628869,4.563431330695553,-74.02159594101212,4.639403318876315,4686&b=7256&p=-74.10193346542607,4.615791272873822,4686#
然后我传给folium如下:
# cargamos los puntos de cordenadas para las localidades de las ciudades
df_loc = pd.read_json("poligonos-localidades.json")
# cargamos los puntos de cordenadas para las barrios de las ciudad
with open('scat_geojson.geojson', encoding='utf-8-sig') as f:
dct = json.load(f)
coord_barrios = dict()
coordenadas = []
for datos in dct['features']:
coord_barrios.setdefault(correct, coordenadas)
correct = datos['properties']['SCANOMBRE'].replace(" ", "_")
for bar_coord in datos['geometry']['coordinates']:
#coordenadas = []
for p in bar_coord:
for q in p:
coordenadas.append(tuple(reversed(q)))
# creamos el objeto de mapa
mapObj = folium.Map(location=[4.6406458,-74.0613249],
zoom_start=10, tiles="Stamen Toner")
weight = 2
folium.PolyLine(coordenadas, color="Yellow", weight=weight).add_to(mapObj)
folium.LayerControl().add_to(mapObj)
mapObj
现在我的问题来了,挂载数据时会发生这种情况:
它向我添加了点,但它把它们与穿过其他点的线放在一起。估计我应该只做波哥大市区的围合。
希望大家多多指教,先谢过了,万分感谢
要解决上一个问题,请执行以下操作,因为 folium 有一个 geojson 包,它接收 .geojson 并为我们绘制多边形,立即更简单的代码:
loc_bog = gpd.read_file("dataset/localidades-bogota.geojson")
style_loc = {'fillColor':"#ff000020", "color":"#000000"}
loc_layer = folium.GeoJson(
loc_bog,
name = "Localidades",
show=False,
style_function=lambda x:style_loc,
tooltip = folium.GeoJsonTooltip(
fields=["LocCodigo","LocNombre"],
aliases=["N°", "Nombre: "],
localize = True
)).add_to(mapObj)
希望有人帮忙
我需要帮助我需要我正在尝试在 folium 中绘制地理定位点我已经提取了带有每个街区名称的坐标列,数据来自 geojson,其中包含哥伦比亚波哥大街区的坐标,数据如下:https://mapas.bogota.gov.co/?l=654&e=-74.1863908628869,4.563431330695553,-74.02159594101212,4.639403318876315,4686&b=7256&p=-74.10193346542607,4.615791272873822,4686#
然后我传给folium如下:
# cargamos los puntos de cordenadas para las localidades de las ciudades
df_loc = pd.read_json("poligonos-localidades.json")
# cargamos los puntos de cordenadas para las barrios de las ciudad
with open('scat_geojson.geojson', encoding='utf-8-sig') as f:
dct = json.load(f)
coord_barrios = dict()
coordenadas = []
for datos in dct['features']:
coord_barrios.setdefault(correct, coordenadas)
correct = datos['properties']['SCANOMBRE'].replace(" ", "_")
for bar_coord in datos['geometry']['coordinates']:
#coordenadas = []
for p in bar_coord:
for q in p:
coordenadas.append(tuple(reversed(q)))
# creamos el objeto de mapa
mapObj = folium.Map(location=[4.6406458,-74.0613249],
zoom_start=10, tiles="Stamen Toner")
weight = 2
folium.PolyLine(coordenadas, color="Yellow", weight=weight).add_to(mapObj)
folium.LayerControl().add_to(mapObj)
mapObj
现在我的问题来了,挂载数据时会发生这种情况:
它向我添加了点,但它把它们与穿过其他点的线放在一起。估计我应该只做波哥大市区的围合。
希望大家多多指教,先谢过了,万分感谢
要解决上一个问题,请执行以下操作,因为 folium 有一个 geojson 包,它接收 .geojson 并为我们绘制多边形,立即更简单的代码:
loc_bog = gpd.read_file("dataset/localidades-bogota.geojson")
style_loc = {'fillColor':"#ff000020", "color":"#000000"}
loc_layer = folium.GeoJson(
loc_bog,
name = "Localidades",
show=False,
style_function=lambda x:style_loc,
tooltip = folium.GeoJsonTooltip(
fields=["LocCodigo","LocNombre"],
aliases=["N°", "Nombre: "],
localize = True
)).add_to(mapObj)
希望有人帮忙