Python dibuja un mapa de carreteras en el mapa de openstreetmap

Use python para mostrar la trayectoria de latitud y longitud

¡Ey! Mucho tiempo sin vernos a todos. Han pasado más de dos años desde que publiqué un blog por primera vez. Los datos de longitud y latitud se muestran en el mapa y se genera una ruta para facilitar la optimización y el análisis de la ruta de rodaje en el futuro. El lenguaje utilizado en este artículo es python, y se utiliza el paquete folium. Los datos se pueden encontrar en el sitio web de flightaware. Antes de usar este paquete, aún se requiere pip install folium.

Uso básico de folium

  1. folium.Map([latitud, longitud], inicio de zoom, ancho, altura, control_scale, no_touch)   #zoom start es el tamaño de zoom inicial del mapa, cuanto mayor sea el valor, mayor será el nivel de zoom del mapa, el ancho es un píxel o porcentaje (dos formas int o str), altura del mapa de altura, control_scale es si se muestra la escala en el mapa, el valor predeterminado es false, no_touch es si se prohíbe tocar el mapa o arrastrar el mapa, el valor predeterminado no está prohibido. Estas funciones son opcionales, por lo general solo se requieren longitud, latitud y zoom_start.
  2. folium.Marker([latitud, longitud]).add_to(m)   #Establecer un glifo en el mapa
  3. folium.PolyLine(ubicación = [[latitud 1, longitud 1], [latitud 2, longitud 2]...], peso, color, opacidad).add_to(m) # Dibujar una línea en el mapa para conectar las coordenadas de   entrada

Python usa código de dibujo folium

Después de instalar el paquete folium, podemos usarlo, el código es el siguiente:

from folium import plugins
import folium
import os
m = folium.Map([39.1289, 117.3539], zoom_start=10)  #中心区域的确定
location =[[39.1289, 117.3539], [39.1277262, 117.3542938], [39.1277275, 117.3543001], [39.1277262, 117.3542938], 
          [39.1277275, 117.3543001], [39.1277262, 117.3542938], [39.1277262, 117.3542938], 
          [39.1271896, 117.3541359], [39.127121, 117.354126], [39.127121, 117.354126], 
          [39.1269348, 117.3541107], [39.1268692, 117.3541061], [39.1263994, 117.3540649], 
          [39.1257591, 117.3540165], [39.125608, 117.3540192], [39.1251984, 117.3539717], 
          [39.1250038, 117.3539568], [39.1246886, 117.3539276], [39.1246033, 117.3539269], 
          [39.1244316, 117.353912], [39.1242828, 117.353912], [39.1241112, 117.3538971], 
          [39.1238623, 117.3538666], [39.1233153, 117.3538361], [39.1232643, 117.3538374], 
          [39.1230354, 117.3537478], [39.1229895, 117.353714], [39.1228638, 117.3535239], [39.122818, 117.3534493], 
          [39.1227334, 117.353241], [39.1226985, 117.3531494], [39.122652, 117.3530273], [39.122652, 117.3529968], 
          [39.1225821, 117.352829], [39.1225239, 117.3526764], [39.1224861, 117.3525835], [39.1224774, 117.3525391], 
          [39.1224657, 117.3525238], [39.1224174, 117.3523745], [39.1221886, 117.3517625], [39.1221771, 117.3517327], 
          [39.1221399, 117.3516388], [39.1221199, 117.3515834], [39.1220169, 117.3512998], [39.1219769, 117.3512115], 
          [39.1219482, 117.3511057], [39.1219188, 117.3510437], [39.121814, 117.3507996], [39.1217791, 117.3507385], 
          [39.1217558, 117.350708], [39.1215935, 117.3505982], [39.121558, 117.3505859], [39.1213417, 117.3506131], 
          [39.1211014, 117.3507475], [39.121011, 117.3507996], [39.1209528, 117.3508301], [39.120883, 117.3508759], 
          [39.1208481, 117.3509064], [39.1207352, 117.3509714], [39.1204834, 117.3511356], [39.120369, 117.3511953], 
          [39.120369, 117.3511953], [39.1202774, 117.351255], [39.1186409, 117.3522551], [39.1185321, 117.3523254], 
          [39.1182976, 117.3524641], [39.1181374, 117.3525686], [39.1173566, 117.3530426], [39.1171188, 117.3531955], 
          [39.1168213, 117.3533746], [39.1163325, 117.3536682], [39.115867, 117.3539581], [39.1156691, 117.3540802], 
          [39.1156342, 117.3540955], [39.1156342, 117.3540955], [39.1144981, 117.3547927], [39.113551, 117.3553772], 
          [39.113551, 117.3553772], [39.1125069, 117.3559869], [39.1120846, 117.3557129], [39.1120846, 117.3557129], 
          [39.1119118, 117.3553002], [39.1118546, 117.355136], [39.111782, 117.3549652], [39.1115456, 117.3542404], 
          [39.1115958, 117.3540649], [39.1115958, 117.3540649], [39.1128411, 117.3532562], [39.1131786, 117.3530426], 
          [39.113807, 117.3526459], [39.113807, 117.3526459], [39.1191902, 117.3493593], [39.1197308, 117.3490295], 
          [39.1206386, 117.3484802], [39.1208713, 117.3483276], [39.1214676, 117.347971], [39.1214676, 117.347971], 
          [39.1214676, 117.347971], [39.1214676, 117.347971]]   #输入坐标点(注意)folium包要求坐标形式以纬度在前,经度在后
route = folium.PolyLine(    #polyline方法为将坐标用线段形式连接起来
    location,    #将坐标点连接起来
    weight=3,  #线的大小为3
    color='orange',  #线的颜色为橙色
    opacity=0.8    #线的透明度
).add_to(m)    #将这条线添加到刚才的区域m内
m.save(os.path.join(r'C:\Users\Desktop', 'Heatmap1.html'))  #将结果以HTML形式保存到桌面上

 

 Visualización de resultados (esto debe hacerse en Internet, a veces la carga de imágenes es un poco lenta)

Supongo que te gusta

Origin blog.csdn.net/AAAAAAAKing/article/details/83278441
Recomendado
Clasificación