查看原文
其他

保姆级教程 | 以土壤数据为例手把手教你画空间叠加图

王学为 环评互联网 2021-04-27

保姆级教程 | 手把手教你画空间叠加图

作者:王学为,系尚云环境土壤与地下水部门技术负责人。

注:教程仅介绍步骤,需要一些软件基础,如果有不明白的地方可以留言。

教程以以宜宾县土壤数据为例

工具:Surfer(绘图)和ArcGIS(数据准备)

软件版本:ArcGIS 10.2汉化版,Surfer14英文版

数据准备

友情提示:所有数据请保存在.gdb数据库中,否则会出现一系列问题,例如栅格无法定义、修改坐标系、无法投影等等。同时,建议保存路径及文件名用英文命名(不一定出现问题,但出现问题可以试试这么做),理由同上。

一、数据要求:

1、边界文件(.shp or .dxf等);

*边界文件为线状shp文件:

*.dxf文件可以用CAD编辑制作

2、属性文件(.xls .xlsx or .dbf等);

属性文件需要包含每个点的坐标信息及属性信息:

*坐标需要在ArcGIS中转换成直角坐标系的格式;

*属性信息就是想要表达的信息,可以多个属性在同一张表中,也可以分多个表。示例中选择的分别是MU_GLOBAL(数据库文件和栅格文件的链接ID…这个属性没有展示意义,实际操作过程中请选择一个有意义的属性)、T_SAND(沙含量)、T_GRAVEL(碎石体积百分比)。

二、准备步骤:

1、宜宾县边界文件:

1)打开全国县级行政区划矢量图(公众号后台回复“行政图”获取):

2)点击目录,在指定文件夹下新建一个面状矢量文件,坐标定义为北京54。(土壤数据源的坐标为北京54,两者需匹配)

3)打开属性表,搜索“宜宾县”进行定位,选中并缩放至宜宾县。

4)点击编辑器,开始编辑(County图层)。右键选中的图层点击复制,再次右键视图中任意点粘贴,在出现的对话框中选择目标为宜宾县,点击确定(此步骤需要复制源文件与粘贴目标文件保存在同一文件夹下,否则无法粘贴)。取消勾选County图层显示后,可以看到宜宾县的面状文件已经出现了。保存编辑内容后停止编辑。

5)在工具箱中依次点击“数据管理工具”->“要素”->“要素转线”,输入要素“Yibin”。点击确定,取消其他图层显示,宜宾县边界轮廓出来了。

2、宜宾县数据属性表

1)导入HWSD_China.tif文件。(文件下载使用方法请跳转世界土壤数据库(HWSD)全球土壤数据下载处理)使用宜宾县面文件“County图层”对栅格文件进行处理。在工具箱中依次点击“空间分析工具”->“提取分析”->“按掩膜提取”,输入栅格“HWSD_China”,输入要素掩膜数据“Yibin”面文件,选择好输出路径后单击确定。

2)经查询,宜宾市经度在104°E左右,这里我们使用三度分带(这里选择比较随意,实际操作过程中带号的选择与地图比例尺有关,可以自行百度),为了保证坐标值都是正值,我们选择中央经线为104°的34度带,土壤数据库采用的地理坐标是北京54,所以投影坐标选择“Beijing_1954_3_Degree_GK_Zone_34”的投影坐标系。为了防止有小白同学找不到坐标系,坐标系选择路径贴在后边:“投影坐标系”->“Gauss Kruger”->“Beijing 1954”->“Beijing_1954_3_Degree_GK_Zone_34”。

8)Yibin_FeatureToLine(线文件)定义投影:在工具箱中依次点击“数据管理工具”->“投影和变换” ->“要素”->“投影”。

3)Yibin_Extract(掩膜后的栅格文件)定义投影:在工具箱中依次点击“数据管理工具”->“投影和变换” ->“栅格”->“投影栅格”。

4)在工具箱中,依次点击“转换工具”->“由栅格转出”->“栅格转点”,输入投影后的宜宾县栅格文件,选择“T_SAND”字段,选择好路径后点击确定。

5)打开RasterT_Yibin_E1(栅格转点后的矢量点文件)图层属性表点击“添加字段”(如果前面没有停止编辑,此处为灰色不可选),名称设为X,数据类型为浮点型。右键X字段标题点击计算几何,选择点的X坐标(此处需选取“使用数据源的坐标系”,数据框的坐标系与处理后的数据不匹配,新建空白文件后导入处理后的数据,数据框与数据源坐标系即可匹配),单击“确定”。Y坐标设置同上。

6)因为Surfer无法调用ArcGIS的数据库,所以我们需要将RasterT_Yibin_E1的信息单独导出。单击“表选项”->“导出”,选择一个非数据库的文件夹保存,类型选择dBase表。同时将Yibin_FeatureToLine_Project文件(投影后的线文件)导出至相同文件夹下保存。


数据准备过程到此结束,其余属性请重复“栅格转点”之后的操作。

绘图步骤

1、制作网格文件。打开Surfer,点击“Home”->“Grid Data(网格数据)”,打开T_SAND.dbf文件。X、Y、Z设置如图所示(其中Z为属性数据,命名可能不同,其余属性可以暂时不用管),点击OK。

2、制作有边界的网格文件(白化边界)。点击“Grids(网格)”->“Blank(白化)”,Input Grid(输入网格)选择刚刚制作好的网格文件,Blanking Polygon boundary(白化多边形边界)选择“Yibin.shp”文件(从ArcGIS中导出的线文件),Loaded 1 polygons total 选择“Blank outside(白化外侧)”,选择导出路径,New layer type(新图层样式)我这里选择的是“Contour(等值线)”。得到一个有边界的等值线图形。

3、美化图片。在目录中选中“Contours-T_SAND_out.grd”,“Properties(属性)”会出现属性选项,在Level选项卡中,“Filled Contours”勾选,并在下方的“Fill Color”中选择一个自己喜欢的颜色,“Major Contours”和“Minor Contours”中的“Style”设置为“Invisible(不可见)”。就得到下面一张图。(这里不一一截图了,大家可以根据自己的喜好探索美化图片)

可以看到下方和右侧都有坐标信息,四周也有刻度线,我们现在取消显示这些冗余的东西。以“Bottom Axis(底轴)”为例。在“Contents”中选中“Bottom Axis”,在“Properties”中“General”选项卡下“Labels”选项“Show”勾选去掉,“Ticks”选项卡中“Major Ticks”下方“Style”设置为“None”。

其余三个坐标轴同样设置,我们可以得到下图。是不是干净多了!

然后我们在“Contents”中选中“Map”, 在“Properties(属性)”中“View”选项卡下调整视图角度,参数设置如图。需要注意的是“Projection(投影)”需要设置为“Perspective(透视)”的时候,“Field of view(视界)”选项才会起作用。(远小近大的透视效果)

其余图片重复上面的步骤,这里不再赘述,最后的效果如下图。(远小近大在叠加图中不好看,,所以取消了)

框选全部图形后,在“Layout”选项卡中的“Size”和“Align(对齐)”可以辅助对齐。右键图形选择“Group”可以组合起来,防止后续调整打乱对齐。

然后在“Home”选项卡中选择“Polyline”,选择端点绘制连接线,效果如下图。

但是,会发现透视关系不对,后面的线显示在了前面。这里有两个原因:一是“线”的图层位于“面”的上方,调整图层顺序就好,选中需要调整的线,“Layout”选项卡中点击“Send to Back”即可;二是图形的“白化区域”,并不是白色,而是透明的,这个时候需要做一些调整。选中需要调整的图层,在“Properties(属性)”中“General”选项卡下的“Blanked Regions(白化区域)”,“Pattern”选择“Solid”,“Foreground color”选择“White”,就好啦!需要标文字的话,在“Home”中选择“Text”,在图形中输入文字就可以了。

最后在“File”中“Export”就可以了,导出文件类型按需要选择。

以上就是空间叠加图的绘制方法。

叠加图的绘制方式不止这一种,很多软件可以实现一样的效果。

更多教学课程,欢迎关注我们的抖音号和视频号

如果大家觉得有用,请给我点赞吧!如果操作过程中发现什么错误或者不明白的地方,请在评论区留言,小编努力改正。如果有更简单的方式方法,也可以留言,大家一起学习进步。

编辑:君君.环评互联网

来源:地下水环境网

MORE | 更多精彩文章

下载[环评云助手]app

扫描上方二维码

和30W+环评人一起进入云时代

10000+法律法规库、免费环评公开课、全国机构人员库

| 声明:本号对转载、分享、陈述、观点保持中立,目的仅在于传递更多信息,版权归原作者所有。如涉及作品版权问题,请与本公众号联系,我们将尽快删除!已申明原创之作品,转载需申请并获本号授权!

| 投稿、授权、商务及其他请加微信号:eianet2016

联系邮箱:zmlsnh@eiacloud.com 

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存