"该资源是一个Python3脚本,用于实现WGS84、BD09和GCJ02三套坐标系统之间的相互转换。通过`pip install CoordinateChange`安装依赖库后,可以调用`ChangeCoord`类中的方法进行坐标转换。示例代码中读取了一个名为'ZJK_Heat_20190428_wgs84'的CSV文件,该文件包含了WGS84坐标的经纬度信息,并将其转换为BD09坐标,然后将转换后的数据保存到新的CSV文件'Bd09.csv'中。" 在地理信息系统和定位服务中,坐标转换是至关重要的,因为它涉及到不同坐标系之间的兼容性和一致性。以下是关于WGS84、BD09和GCJ02坐标系统的详细说明以及如何使用Python进行转换: 1. **WGS84(World Geodetic System 1984)**:这是一个全球统一的大地坐标系统,也是GPS(全球定位系统)使用的标准坐标系。它基于地球椭球模型,提供经度、纬度和海拔高度三个参数。 2. **GCJ-02(China Geodetic Coordinate System 2000)**:也称为火星坐标系,是中国国家测绘局为了国家安全和隐私考虑而采用的加密坐标系统。它对WGS84坐标进行了偏移处理,使得公开的地理位置信息无法直接对应到真实位置。 3. **BD-09(BeiDou Navigation Satellite System 2009)**:这是北斗卫星导航系统采用的坐标系,是在GCJ-02基础上进一步加密的坐标系统,主要服务于中国的北斗定位服务。 在Python中,使用`ChangeCoord`类可以方便地进行这些坐标系之间的转换。例如,`wgs84_to_bd09(lng, lat)`方法用于将WGS84坐标转换为BD09坐标。这个脚本首先读取了WGS84坐标的CSV文件,然后逐个将经纬度转换为BD09坐标,并将结果存储在新的列中,最后将更新后的DataFrame写入新的CSV文件。 在给定的代码片段中,`pd.read_csv()`用于读取CSV文件,`np.array()`用于创建数组,`ChangeCoord().wgs84_to_bd09()`执行转换,而`df.to_csv()`则用于将转换后的数据保存到新文件中。此外,代码还计算了整个转换过程所花费的时间,便于性能评估。 这个资源提供了Python3环境下进行WGS84到BD09坐标转换的实例,对于需要在中国境内处理地理坐标数据的开发者来说非常实用。同时,通过类似的方法,也可以实现WGS84与GCJ02之间的转换,或者GCJ02到BD09的转换,满足不同的应用场景需求。
import pandas as pd
import numpy as np
import time
from ChangeCoordinate import ChangeCoord
t = int(time.time())
coord = ChangeCoord()
filename = 'ZJK_Heat_20190428_wgs84'
df = pd.read_csv('C:\\ZJK_Heat_20190428_wgs84.txt')
list_lon84 = np.array(df["lon_84"]) # 填写对应经纬度字段名
list_lat84 = np.array(df["lat_84"]) #
lng = list_lon84[1]
lat = list_lat84[1]
list_newlon = []
list_newlat = []
size = list_lat84.size
for i in range(0,size):
lng = list_lon84[i]
lat = list_lat84[i]
print('正在第 '+str(i)+' 条数据...')
print(' Wgs84坐标:'+str(lng))
print(' Wgs84坐标:'+str(lat))
lng, lat = coord.wgs84_to_bd09(lng,lat)
list_newlon.append(lng)
list_newlat.append(lat)
print(' 转换后百度坐标:'+str(lng))
print(' 转换后百度坐标:'+str(lat))
下载后可阅读完整内容,剩余1页未读,立即下载
- 粉丝: 4
- 资源: 8
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- C++多态实现机制详解:虚函数与早期绑定
- Java多线程与异常处理详解
- 校园导游系统:无向图实现最短路径探索
- SQL2005彻底删除指南:避免重装失败
- GTD时间管理法:提升效率与组织生活的关键
- Python进制转换全攻略:从10进制到16进制
- 商丘物流业区位优势探究:发展战略与机遇
- C语言实训:简单计算器程序设计
- Oracle SQL命令大全:用户管理、权限操作与查询
- Struts2配置详解与示例
- C#编程规范与最佳实践
- C语言面试常见问题解析
- 超声波测距技术详解:电路与程序设计
- 反激开关电源设计:UC3844与TL431优化稳压
- Cisco路由器配置全攻略
- SQLServer 2005 CTE递归教程:创建员工层级结构