当前位置: 首页 > news >正文

提供网站制作公司哪家好网络软文范文

提供网站制作公司哪家好,网络软文范文,什么牛网站建设,wordpress 修改页面链接地址代码适用于需要处理和分析地理空间数据的场景,如城市规划、环境监测或自然资源管理,其中它可以帮助用户读取特定区域的Shapefile文件,确定其地理边界,并基于这些边界计算出按照经纬度5度间隔的图幅编号,进而用于地图制…


代码适用于需要处理和分析地理空间数据的场景,如城市规划、环境监测或自然资源管理,其中它可以帮助用户读取特定区域的Shapefile文件,确定其地理边界,并基于这些边界计算出按照经纬度5度间隔的图幅编号,进而用于地图制作、空间数据管理和快速数据检索。

实现思路:

代码主要用于处理地理空间数据,具体功能如下:

  1. 读取一个Shapefile(.shp)文件,获取其地理边界范围。
  2. 根据获取的边界范围,计算出按照经纬度 间隔的图幅编号。
  3. 将每个国家的地图边界范围和对应的图幅编号存储起来,并打印出来。

完整代码

import csv
import geopandas as gpddef get_map_extent(shp_file_path):"""读取.shp文件并获取其边界范围。:param shp_file_path: .shp文件路径:return: 地图边界的范围 (minx, miny, maxx, maxy)"""# 读取.shp文件gdf = gpd.read_file(shp_file_path)# 获取地图边界boundary = gdf.geometry.total_bounds# 返回地图范围return boundarydef calculate_sheet_ranges(map_extent):"""根据地图边界计算图幅范围,并按照南北纬和东西经的5度分隔规则返回图幅范围的格式。:param map_extent: 地图边界的范围 (minx, miny, maxx, maxy):return: 图幅范围列表,每个元素包含(lon_start, lat_start, lon_end, lat_end, sheet_range)"""minx, miny, maxx, maxy = map_extent# 初始化图幅范围列表sheet_ranges = []# 计算图幅编号# for lon_start in range(int(minx // 5) * 5, int(maxx // 5 + 1) * 5, 5):#     for lat_start in range(int(miny // 5) * 5, int(maxy // 5 + 1) * 5, 5):for lon_start in range(int(minx // 5) * 5, int(maxx // 5 + 1) * 5, 5):for lat_start in range(int(miny // 5 + 1) * 5, int(maxy // 5 + 2) * 5, 5):  # GLC_FCS30D 纬度需要上调一格5度lon_end = lon_start + 5lat_end = lat_start + 5sheet_range = f"{'W' if lon_start < 0 else 'E'}{abs(lon_start)}" \f"{'S' if lat_start < 0 else 'N'}{abs(lat_start)}"sheet_ranges.append(sheet_range)return sheet_rangesdef main():iso_data = []with open('../../ISO.csv', newline='') as csvfile:# 创建 CSV 读取器csv_reader = csv.reader(csvfile)data = list(csv_reader)  # 将文件内容读取到内存中# 初始化行数计数器iso_count = 0for country in data:iso_count += 1sids_country = country[0]iso_map_extent = [iso_count, sids_country]  # [1, 'BMU']# 示例文件路径shp_file_path = fr'path_to_admin_division\{sids_country}.shp'# 获取地图范围map_extent = get_map_extent(shp_file_path=shp_file_path)# 计算图幅范围sheet_ranges = calculate_sheet_ranges(map_extent=map_extent)# 打印结果print(iso_count, sids_country, map_extent)iso_map_extent.extend(sheet_ranges)iso_data.append(iso_map_extent)print('- Map Extent Num: ', len(sheet_ranges), iso_map_extent[2:], '\n')if __name__ == '__main__':main()

实现流程:

  1. 导入库:导入csv库用于读取CSV文件,导入geopandas库用于处理地理空间数据。
  2. 定义get_map_extent函数:该函数接收一个.shp文件路径作为参数,读取该文件,并返回其地理边界范围。
  3. 定义calculate_sheet_ranges函数:该函数接收一个边界范围作为参数,计算并返回一个图幅编号列表。图幅编号的计算规则是按照经纬度5度的间隔。
  4. 定义main函数:这是程序的主要执行函数。它首先读取一个CSV文件,然后对于CSV文件中的每一个条目,执行以下步骤:
    • 构造.shp文件路径。
    • 调用get_map_extent函数获取地图边界范围。
    • 调用calculate_sheet_ranges函数计算图幅编号。
    • 打印出当前处理的国家和其地图边界范围。
    • 将地图边界范围和图幅编号添加到结果列表中。
  5. 执行入口:如果该脚本作为主程序运行,将调用main函数。

代码运行示例:

  • 预备Shapefile文件:

  • 程序输出:


应用范围:

  • 地理信息系统(GIS):用于处理和分析地理空间数据。
  • 地图制作:确定地图的边界范围和图幅编号,有助于地图的制作和布局。
  • 空间数据分析:在进行空间数据分析时,可以利用此脚本快速获取地图边界和图幅编号,进而进行更深入的分析。
  • 科研和教育:在地理学、城市规划、环境科学等领域的研究和教学中,用于数据处理和分析。

注意事项:

  • 代码中的shp_file_path是一个格式化字符串,需要根据实际的文件路径进行调整。
  • calculate_sheet_ranges函数中的注释掉的代码块可能是用于不同的计算规则或示例。
  • 代码中的打印语句用于调试和验证,展示了每个国家的边界范围和图幅编号。

相关函数及调用库的解释说明:

函数及调用库描述
csvPython标准库中的模块,用于读写CSV(逗号分隔值)文件。在此代码中,它被用来读取包含国家信息的CSV文件。
geopandas一个开源项目,扩展了pandas库的功能,使其能够处理地理空间数据。它允许用户读取、处理和分析地理空间数据。
get_map_extent(shp_file_path)此函数接收一个Shapefile的文件路径作为参数,使用geopandas的read_file方法读取Shapefile,并获取其几何边界。返回值是一个包含最小经度、最小纬度、最大经度、最大纬度的元组。
calculate_sheet_ranges(map_extent)此函数接收一个地图边界范围作为参数,并基于这个范围计算图幅编号。按照南北纬和东西经的5度间隔规则来划分图幅,并返回一个包含这些图幅编号的列表。

如果这对您有所帮助,希望点赞支持一下作者! 😊

点击查看原文

file

http://www.hkea.cn/news/769553/

相关文章:

  • 做原型网站枣庄网络推广seo
  • 品牌网站开发设计外贸网站平台
  • 网站做留言板网站推广在线
  • 长春服务好的网络营销seo网站推广的主要目的
  • 搜索引擎优化和关键词竞价广告的区别宿州百度seo排名软件
  • 一搜同志网站建设电话青岛网站seo优化
  • 官方做任务网站网络营销公司注册找哪家
  • django做视频网站网络营销推广专家
  • 国外手做网站搜索引擎推广的关键词
  • 网站建设商标注册多少类目域名注册免费
  • 哪里有网站设计公司长沙网络公司最新消息
  • 试描述一下网站建设的基本流程百度怎么发布短视频
  • 我现在有域名怎么做网站搜索关键词热度
  • 海外如何 淘宝网站建设快速seo整站优化排行
  • 代还信用卡网站建设赣州seo顾问
  • 响应式网站建设推广开网店
  • 成都专业网站推广公司优化大师优化项目有
  • 怎么用wordpress搭建网站百度关键词排名点
  • 外挂网站模板域名搜索引擎入口
  • 手机网站开发 pdfseo搜索引擎优化工作内容
  • 上海中小网站建设洛阳seo博客
  • 南宁网站建设公司哪家专业搜索引擎优化包括
  • 新疆住房与建设厅网站新产品推广方式有哪些
  • 做网站站怎么赚钱网络营销模式有哪些?
  • 南通城市建设集团有限公司网站南京谷歌推广
  • 南通网站定制方案怎么查找关键词排名
  • 权大师的网站是哪个公司做的百度做个人简介多少钱
  • 烟台网站建设设计软文广告经典案例100字
  • 做微信用什么网站广州百度seo代理
  • 网站建设目标 优帮云跨境电商营销推广