python聚类结果用leaflet绘制轨迹聚类
时间: 2023-11-20 18:04:54 浏览: 141
- 首先,需要安装leaflet和pandas库,可以使用以下命令进行安装:
!pip install folium
!pip install pandas
- 接下来,读入聚类结果和轨迹数据,将其转换为pandas dataframe格式:
import pandas as pd
import folium
# 读入聚类结果
cluster_result = pd.read_csv('cluster_result.csv')
# 读入轨迹数据
trajectory_data = pd.read_csv('trajectory_data.csv')
# 将经纬度转换为浮点型
trajectory_data['latitude'] = trajectory_data['latitude'].astype(float)
trajectory_data['longitude'] = trajectory_data['longitude'].astype(float)
# 将轨迹数据和聚类结果合并
trajectory_data = pd.merge(trajectory_data, cluster_result, on='trajectory_id')
- 然后,按照聚类结果将轨迹数据分为不同的簇:
# 获取不同簇的经纬度信息
cluster_data = []
for i in set(trajectory_data['cluster']):
cluster = trajectory_data[trajectory_data['cluster'] == i]
cluster_data.append(cluster[['latitude', 'longitude']].values.tolist())
- 最后,使用folium绘制地图和聚类结果:
# 创建地图对象
m = folium.Map(location=[trajectory_data['latitude'].mean(), trajectory_data['longitude'].mean()], zoom_start=12)
# 添加聚类结果
for i, cluster in enumerate(cluster_data):
folium.PolyLine(locations=cluster, color='red').add_to(m)
# 显示地图
m
这样就可以将python聚类结果用leaflet绘制轨迹聚类了。
相关推荐


















