惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

L
LINUX DO - 最新话题
MyScale Blog
MyScale Blog
月光博客
月光博客
S
SegmentFault 最新的问题
C
CERT Recently Published Vulnerability Notes
P
Proofpoint News Feed
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
人人都是产品经理
人人都是产品经理
K
Kaspersky official blog
Forbes - Security
Forbes - Security
宝玉的分享
宝玉的分享
爱范儿
爱范儿
V
Visual Studio Blog
博客园 - 聂微东
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
N
News and Events Feed by Topic
阮一峰的网络日志
阮一峰的网络日志
V
V2EX
The Cloudflare Blog
Attack and Defense Labs
Attack and Defense Labs
美团技术团队
L
LangChain Blog
NISL@THU
NISL@THU
IT之家
IT之家
T
Tor Project blog
云风的 BLOG
云风的 BLOG
Security Latest
Security Latest
Apple Machine Learning Research
Apple Machine Learning Research
Cisco Talos Blog
Cisco Talos Blog
I
InfoQ
Help Net Security
Help Net Security
Engineering at Meta
Engineering at Meta
Know Your Adversary
Know Your Adversary
I
Intezer
Recent Commits to openclaw:main
Recent Commits to openclaw:main
TaoSecurity Blog
TaoSecurity Blog
P
Palo Alto Networks Blog
GbyAI
GbyAI
Last Week in AI
Last Week in AI
T
Threat Research - Cisco Blogs
T
The Exploit Database - CXSecurity.com
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
博客园 - Franky
L
Lohrmann on Cybersecurity
The Register - Security
The Register - Security
W
WeLiveSecurity
Recorded Future
Recorded Future
大猫的无限游戏
大猫的无限游戏
AWS News Blog
AWS News Blog
G
GRAHAM CLULEY

WSH

凑数日子 2026年,大概将会是最后一个人口保持在14亿以上的年份 感谢之人 数字经济中的注意力交易 突然的噩耗 一株洋瓜藤 再见到姑妈 港澳掠影 Miniflux 中文搜索能力增强 慢慢吹~~~轻轻送~~~ 房子梦 探索云南-大理 证书过期导致的错误 过年被追问工资 在秋天开始 水里的鱼 斩断联系1 云南壮族婚恋 我有一颗乳牙 世界的底色是争,抢,偷 无题4 无题3 人来人往 AI见闻 无题2 滇池掠影 WebGIS 三维空间分析之参考超图实现的天际线分析 我原来是个同步单线程 往事如烟1 净月潭之行 一万次悲伤 开源丑闻的碎碎念 提高开发幸福感所做的举措之构建前端基础设施 浏览器标签页进程引发的性能问题 山的那边 想回到过去去去去去去去去去去去去~ WebGIS开发之glsl支持 WebGIS三维空间分析之坡度计算 WebGIS 三维分析之阴影率分析 幸福(或我的女儿叫波兰) 最后一课 Markdown解析高亮及Mermaid 上海掠影 Cesium/QGIS加载图新地球LRC自定义图层 端午粽子 如何清晰地写作 清明扫墓 自编写,自用的开源工具 饮食 AI在GIS领域的实践之QGIS-MCP 燕南飞 WebGIS 三维空间分析之剖面线分析 WebGIS三维开发中的面积量测 WebGIS空间分析之坡向分析的实现 收藏自由-新的书签工具 月夜杂谈 花海,指弹版 三维之Cesium分屏显示 请验证您是真人 自定义「ONE · 一个」订阅源 西湖美人峰徒步 给开源RSS服务应用Miniflux添加「标题翻译」 五一青山湖骑行 将chatGPT集成到微信机器人 动手更换旧手机——google pixel3的电池 Vue组件检测无效属性 ArcGIS复杂插件处理 两件关于博客网站变更的事情 Vue开发个人守则 账户注销后遗症 《纳瓦尔宝典 财富与幸福》前两章的一些摘录 听一首黄歌—Yellow 坏事总是成双 出差消小记 cesium-控高分析 当你孤单你会想起谁 穿越城市-青山湖 Harry Browne关于个人金融安全17条黄金守则—财富之道 批量裁剪矢量数据的几种途径 小而美的软件 想回到过去 热!热!热! 那么近,又那么远——遥望 为什么win笔记本触摸板没有mac好用呢 一只猫 二月份的检讨 自定义Cesium缩放控件 线段简化的几种算法 今天看球了吗? HDF转为GeoTIFF QGIS插件编写 乐高风格地图 基于Python的遥感可视化记录 使用Python提取遥感影像中的土壤线 接触pandas QQ音乐评论可视化 拆分-应用-联合 阳光打在我身上 淘宝商品信息可视化
GIS数据转换——从点到栅格
WSH · 2024-06-16 · via WSH

目录

    • 写在前面
    • 使用GIS软件实现
      • 1.解析本文数据
      • 2.生成格网
      • 3.空间关系挂接属性
      • 4.栅格化
    • 总结

[TOC]

写在前面

收到一个朋友的问题,如何基于一份包含坐标的文本数据(csv格式)而生成栅格数据(GeoTif)。

我认为不管是编写代码还是借助于GIS软件,都需要经过如下的工作流。相比后者,编写代码会使整个流程更简洁一点且自动化更强,可以直接由表格 --> 栅格,但对于不熟悉编程的人,实现起来可能不太很容易,因为这触及到GIS的底层逻辑了。

flowchart TD
表格 --> pt[矢量点]
pt -->polygon[矢量面]
polygon --> tif[栅格]

那如何在GIS软件里实现呢,下面是与之相关的一个小教程。

本教程使用QGIS,其他软件比如ArcGIS,SuperMap等,操作上会有些许不同,但流程背后的逻辑是互通的。

首先我们将工作流程细化如下

  1. 导入文本数据,生成矢量点图层。
  2. 根据矢量点图层生成格网。
  3. 按空间关系,将点图层的属性信息挂接到格网图层。
  4. 将格网图层栅格化。

1.解析本文数据

在软件顶部菜单栏依次选择 Layer-> Data Source Manager-> Delimited Text,选择待处理的csv文件后,指定哪两列字段作为坐标x和y的值。

image-20240617202402792

设置完毕后,点击Add,如果设置无误,那么此时地图上应该生成一个点图层。

image-20240617202912264

2.生成格网

选择顶部的Vector-> Research Tools -> Create Grid,示例如下

image-20240617203758882

注意Grid Extent,选择以点图层的范围作为渔网范围,并且因为点与点之间的间隔是o.5°,为了将每一个点置于渔网中心,需要将范围拉长0.25。这里需要对实际数据灵活调整。

Horizontal Spaceing以及Vertical Spacing,保持同点与点间的间隔距离一致,也就是o.5°。

image-20240617204546627

3.空间关系挂接属性

生成格网和点图层后,下面将根据格子与点之间的关系进行赋值,每一个格子的属性由被包含在里面的点的属性赋值。

选择 Vector-> Data Management Tools-> Join Attribs By Location

空间关系选择包含/are within

image-20240617205940973

另外选择需要赋值的字段

image-20240617205252158

点击结果图层查看要素的属性信息是否正确挂接,或者是在属性表里直接用类似SQL的语句做筛选。

image-20240617210142812

可以看到,点图层的属性信息已经成功挂接道格网上。

4.栅格化

最后一步,矢量形式的网格图层栅格化。

选择顶部菜单,Raster -> Conversion -> Rasterize(vector to raster),如下:

image-20240617210844984

==几个需要注意的点==

  • 需要指定哪一个字段作为栅格的灰度值,这里选择KGPV_nb
  • 输出栅格的单位,因为我们需要将格网里的每一个格子作为栅格的像元,而且格子是以经纬度划分的,所以这里选择Georeferenced units
  • 分辨率也就是像元的尺寸与格网的格子一致,都是o.5°。
  • 输出栅格的范围需要与输入的矢量图层范围一致,否则超出范围的部分会丢失。

image-20240617211700244

局部放大查看,位置关系是否正确,像元与格子数据是否正确转换。

image-20240617211744470

总结

这是一个很基础的转换,可以看到每一步都是手动完成,且结果可视化,但自动化程度很低,相应的如果存在大量数据,继续沿用此方法将会投入大量的重复劳动,所以仍然需要探索除此之外的方法和工具,比如模型构建器,批处理等,另外如果拥有编程背景,最好是借助代码的力量。

如果你阅读到此记录时,有更好的方法,欢迎让我知道。