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

如何使用ArcGIS进行可视化分析

概述

通视分析是指以某一点为观察点,研究某一区域通视情况的地形分析,利用DEM判断地形上任意两点之间是否可以互相可见的技术方法,分为视线通视分析和视域通视分析,前者判断任意两点之间能否通视,后者从任一点出发,判断该区域内所有其他点的通视情况,这里为大家介绍一下如何使用ArcGIS进行可视化分析。

02

数据来源

本教程所使用的数据是从水经微图中下载的DEM数据,除了DEM数据,常见的GIS数据都可以从水经微图中下载,你可以通过关注微信公众号“水经注GIS”,然后在后台回复“微图”即可获取软件下载地址,当然也可以直接在水经注GIS官方网站下载。

图片

水经微图

03

绘制视线确定通视性

在菜单空白处点击右键,勾选上3D Analyst,如下图所示。

图片

勾选上3D Analyst

在显示的3D Analyst工具条上,点击创建视线按钮,创建视线。

图片

点击创建视线按钮

点击后在图上绘制一条需要分析的视线,绘制之后会得到通视结果,红色代表不可视区域,绿色代表可视区域,蓝色点为障碍点。

图片

可见性结果

04

改变视点高度

在通视分析对话框内,将观测点的高度增加100m,如下图所示。

图片

增加观测点高度

再次绘制同路径的视线,可以看到可视范围变得更大,如下图所示。

图片

更改观测点高度后的可见性结果

05

基于单点的可视域分析

在ArcToolbox内点击“3D Analyst工具\可见性\视域”,调用视域工具。

图片

调用视域工具

在显示的视域对话框内,输入栅格为下载的DEM数据,输入观察点为准备的视点数据。

图片

视域设置

点击确定之后可以看到观察点的视域,绿色代表可见,红色代表不可见,如下图所示。

图片

单点可视域

06

改变单点视点高度

默认使用的是观察点对应的DEM高度进行可视域分析,如果要提高观察点高度,可以通过对观察点图层增加字段的方式解决。

其中,字段名Spot代表指定观察点的绝对高程值;OffisetA代表三维表面高程不变,设定观察点的高程偏移值;OffsetB代表观察点高程不变,设定三维表面的高程偏移值,这里增加字段OffsetA,值为100,表示观测点高度增加100m,如下图所示。

图片

修改后属性表

在ArcToolbox内点击“3D Analyst工具\可见性\视域”,调用视域工具。

图片

调用视域工具

在显示的视域对话框内,输入栅格为下载的DEM数据,输入观察点为增加字段后的观察点文件。

图片

视域设置

点击确定之后可以的到视域范围,相比于增加字段之前,明显变得更广。

图片

视域范围

07

基于路径的可视域分析

如果需要对某个路径进行可视域分析,需要先将路径转换为3D Shapefile,不然分析结果是错误的。

在ArcToolbox内点击“3D Analyst工具\功能性表面\插值Shape”,调用插值Shape工具。

图片

调用插值Shape工具

在显示的插值Shape对话框内,输入表面为下载的DEM文件,输入要素类为需要3D化的线文件。

图片

插值Shape设置

点击确定之后就得到了3D化后的线文件。

图片

3D化的线文件

在ArcToolbox内点击“3D Analyst工具\可见性\视域”,调用视域工具。

图片

调用视域工具

在显示的视域对话框内,输入栅格为下载的DEM,输入观察折线为3D化后的路线。

图片

视域设置

点击确定之后可以看到视域范围,如下图所示。

图片

视域范围

打开属性表,可以看到有Value和Count两个字段,其中Value代表被看到的次数,Count代表被看到的次数下对应的栅格有多少个。

图片

可视域属性表

08

基于线要素通视性分析

在ArcToolbox内点击“3D Analyst工具\可见性\通视分析”,调用通视分析工具。

图片

调用通视分析工具

在显示通视分析对话框内,输入表面为下载的DEM数据,输入线要素为之前得到的3D化后的线。

图片

通视分析设置

点击确定之后可以得到通视分析的结果,绿色代表可见,红色代表不可见。

图片

通视分析结果

09

结语

以上就是如何使用ArcGIS进行可视化分析的详细说明,主要包括了数据来源、绘制视线确定通视性、改变视点高度、基于单点的可视域分析、改变单点视点高度、基于路径的可视域分析和基于线要素通视性分析等功能。

更多免费教程、资源、数据:树谷资料库大全(2023年8月16日更新)

http://www.lryc.cn/news/136198.html

相关文章:

  • 计算机竞赛 基于LSTM的天气预测 - 时间序列预测
  • uniapp 回退到指定页面 保存页面状态
  • ansible(1)-- 部署ansible连接被控端
  • Log4j反序列化命令执行漏洞(CVE-2017-5645)Apache Log4j2 lookup JNDI 注入漏洞(CVE-2021-44228)
  • echarts 之 科技感进度条
  • 基于gin关于多级菜单的处理
  • Oracle/PL/SQL奇技淫巧之Lable标签与循环控制
  • Docker基础操作
  • AMBA总线协议(8)——AHB(六):分割传输
  • 时序分解 | MATLAB实现基于SWD群体分解的信号分解分量可视化
  • 【makefile】自动化变量的简述及实例
  • IntelliJ IDEA 官方网站 idea官网 http://www.jetbrains.com/idea/
  • C#,《小白学程序》第一课:初识程序
  • LeetCode--HOT100题(38)
  • C语言:指针(超深度讲解)
  • Docker详解
  • 软件开发方法:复用与扩展
  • C++新经典09--函数新特性、inline内联函数与const详解
  • C++中机器人应用程序的行为树(ROS2)
  • 像Vuex一样使用redux
  • 关于模板的大致认识【C++】
  • C#如何遍历类的属性,并获取描述/注释
  • ffmpeg 子进程从内存读取文件、提取图片到内存
  • Springboot+Netty+WebSocket搭建简单的消息通知
  • @RefreshScope静态变量注入
  • 多维时序 | MATLAB实现SABO-CNN-GRU-Attention多变量时间序列预测
  • SAP 凭证项目文本 增强 demo2
  • 一套基于C#语言开发的LIMS实验室信息管理系统源码
  • kubesphere部署rocketmq5.x,并对外暴露端口
  • 5.8 汇编语言:汇编高效除法运算