点地图分布-Python+folium

本文介绍如何使用Python的folium库制作小学生班级家庭住址的点分布图。首先,通过pip安装folium和pandas库,接着获取每个地址的精确经纬度(谷歌地球提供最准确数据),然后读取Excel表格并进行定位显示。最终,地图能展示学生住址的集中区域,并为家长提供购房参考,甚至设想了优化校车路线的可能性。
摘要由CSDN通过智能技术生成

忽然想做一个小学生班级家庭住址的分布图,为啥这样想也不太清楚,哈:
查阅了一些资料,资料很多,热力图,点分布图等,但是好多软件都是城市分布,北京、上海、深圳啥的。本次是一个小城市里的局部分布,资料不太多。
闲话少叙,最后看中了python,最近也正在学习。
有这么几步吧:
1、安装folium、panda
2、根据地址确定经纬度。
3、读数据显示定位。

下面按步骤来
1、安装两个包,用pip 试过了conda 不能install。panda用来读excel表格。

pip install folium
pip install panda

2、因为是小区,没有经纬度数据,只能用笨办法一个个查了,打开百度地图找一下,做成表格。

ID longtitude lattitude
1 121.451616 37.483282

百度地图查出来的很不准确,偏差了好多,腾讯高德的也不行,最后试了几次还是谷歌地球的数据相当精准。

3、照葫芦画瓢上程序 参考了另外一篇博客

import pandas as pd
import numpy as np
import os
import folium
from folium import plugins
import webbrowser
Python中,要在地图上显示很多,通常可以使用一些专门的库,如`matplotlib`、`folium`或`plotly`等。这里以`folium`库为例进行介绍,因为`folium`提供了与Leaflet.js兼容的功能,可以很方便地在网页上展示地图,同时也支持在地图上标记。 首先,需要安装`folium`库,可以通过pip安装: ```bash pip install folium ``` 安装完成后,可以使用以下代码示例在地图上添加多个: ```python import folium # 创建一个地图对象,以经纬度为中心,初始缩放级别为10 m = folium.Map(location=[39.9042, 116.4074], zoom_start=10) # 在地图上添加一个标记,参数为经纬度 folium.Marker([39.9042, 116.4074], popup='天安门', tooltip='天安门').add_to(m) # 假设有一些坐标列表 points = [ [39.915, 116.404], [39.920, 116.404], [39.918, 116.408], # 添加更多... ] # 遍历列表,在每个上添加标记 for point in points: folium.Marker(point).add_to(m) # 保存地图到HTML文件,以便在浏览器中查看 m.save('points_on_map.html') ``` 上述代码首先创建了一个地图对象,以北京的经纬度为中心,然后在地图上添加了一个标记,并且遍历了一个的列表,为每个也添加了标记。最后将地图保存为一个HTML文件,可以在浏览器中打开这个文件查看地图。 需要注意的是,处理大量数据时,地图分布和展示方式应根据实际情况进行优化,以保证地图的清晰度和加载性能。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值