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

用Ensaio下载GIS数据

文章目录

    • 简介
    • 重力场绘制

简介

Ensaio在葡萄牙语中是随笔的意思,是一个用于下载开源数据集的python库。其底层基于Pooch来下载和管理数据。

Ensaio可通过pip或者conda来安装

pip isntall ensaio
conda install ensaio --channel conda-forge

由于这个库功能较为单一,所以其内容也较少,除了用于定位系统缓存文件夹的locate函数之外,剩下的几乎都是下载专门数据集的函数了,这些函数的参数只有一个,即数据版本,列表如下

函数数据名称数据地址
fetch_alps_gpsAlpine的GPS速度数据集Sánchez et al. (2018)
fetch_britain_magnetic英国数字化航空磁测British Geological Survey
fetch_british_columbia_lidar加拿大Trail群岛的点云数据LidarBC
fetch_earth_geoid地球大地水准面高度,分辨率为 1 0 ′ 10' 10EIGEN-6C4 model
fetch_earth_gravity地球重力场,分辨率为 1 0 ′ 10' 10EIGEN-6C4 model
fetch_lightning_creek_magnetic澳大利亚磁异常网格Carr, B…
fetch_osborne_magnetic澳大利亚奥斯本矿附近的磁航测量Geophysical…
fetch_sierra_negra_topography2018年厄瓜多尔塞拉内格拉火山熔岩流的地形Geophysical…
fetch_caribbean_bathymetry加勒比海的单波束测深NOAA NCEI
fetch_southern_africa_gravity非洲南部重力的地面勘测NOAA NCEI
fetch_bushveld_gravity非洲南部Bushveld基地的地面重力数据重力:NOAA NCEI
拓扑:ETOPO1
fetch_earth_topography地形数据,分辨率为 1 0 ′ 10' 10ETOPO1
fetch_southern_africa_topography非洲南部地形和测深数据ETOPO1

这些数据的预处理方法可以在github上找到:fatiando-data。

重力场绘制

以重力场数据为例,下载方法如下,需要科学上网。

import ensaio
fname = ensaio.fetch_earth_gravity(version=1)
ensaio.locate()

其中,【locate】可查看缓存文件夹。

下面绘制一下地球的重力场数据。

在这里插入图片描述

import cartopy.crs as ccrs
import matplotlib.pyplot as plt
import ensaio
import xarray as xr# 下载并加载全球重力场数据
fname = ensaio.fetch_earth_gravity(version=1)
data = xr.load_dataset(fname)# 提取重力数据
gravity = data["gravity"]/1e5# 创建绘图
ax = plt.subplot(111, projection=ccrs.Robinson())
ax.set_global()  # 设置为全球范围# 绘制重力数据
img = ax.contourf(gravity.longitude,gravity.latitude,gravity,transform=ccrs.PlateCarree(),cmap="jet",levels=100,
)# 添加海岸线
ax.coastlines(resolution="110m", color="black", linewidth=0.8)
plt.colorbar(img, pad=0.05, aspect=50)
plt.show()
http://www.xdnf.cn/news/267067.html

相关文章:

  • 聚集索引与非聚集索引的区别有哪些?
  • 磁盘文件系统
  • 中间件和组件
  • 滑动窗口leetcode 904
  • 如何在3dMax中使用UVW展开修改器?
  • Flowable7.x学习笔记(十八)拾取我的待办
  • LeetCode //C - 696. Count Binary Substrings
  • HTML简介
  • Linux用户管理命令和用户组管理命令
  • spring2.x详解介绍
  • 【C/C++】Linux的futex锁
  • 终端与环境变量
  • 关于算法设计与分析——拆分表交换问题
  • 连续变量与离散变量的互信息法
  • Docker —— 技术架构的演进
  • 高中数学联赛模拟试题精选学数学系列第3套几何题
  • spring中的@Conditional注解详解
  • 【云备份】热点管理模块
  • 给文件内容加行号
  • 大型语言模型个性化助手实现
  • LeetCode - 1137.第N个泰波那契数
  • python入门(3)循环
  • 腾讯混元-DiT 文生图
  • Vue 3 Element Plus 浏览器使用例子
  • dstack 是 Kubernetes 和 Slurm 的开源替代方案,旨在简化 ML 团队跨顶级云、本地集群和加速器的 GPU 分配和 AI 工作负载编排
  • 大数据引领行业革命:深度解析与未来趋势
  • 接口测试——HTTP状态码
  • bellard.org‌ : QuickJS 如何使用 qjs 执行 js 脚本
  • 施磊老师rpc(三)
  • Docker安装Ollama及使用Ollama部署大模型