最近我们遇到一个nc格式的文件,需要将它做成报告插图,bing搜索一番以后,了解到nc的全名为NetCDF(network Common Data Form),是一种网络通用数据格式,广泛用于大气科学、水文、海洋学、环境模拟、地球物理等诸多领域。
nc其实是一种格网文件,类似于surfer的grd文件,可以被ArcGIS打开。
1、ArcGIS打开nc格式文件
在ArcMap中打开红盒子ArcTools中的Multidimension Tools。
选择Make NetCDF Raster Layer生成nc文件栅格层。
生成的结果如下图。
如果选择Make NetCDF Feature Layer,生成nc文件的矢量土层的效果是怎么样的呢?生成的矢量图层是一个点文件,见下图,不过只有1个点,说明nc文件在ArcMap中不能以矢量图层打开,只能用栅格打开。
2、裁切栅格
由于只要海上部分,因此,我们必须对栅格进行裁剪。首先,在网络上下载了这块海域的岸线,在CAD中,将其编辑为闭合的多边形,以用作裁剪栅格的范围。然而,岸线比较长,其组成的点特别多,在CAD中编辑时,即使有强悍的工作站加持,反应仍然慢得让人崩溃。
我们只能另辟蹊径,观察了一会栅格图,觉得可以从栅格值入手,将陆地上的栅格赋空值。
打开ArcTools中Spatial Analyst Tools/Map Algebra/Raster Calculator提供栅格值计算功能。
ArcMap中有关于Map Algebra的使用,如下:
Input conditional raster : InRas1
Expression : "Value < 5"
Input false raster or constant value : InRas1
Output raster : setnull_1
The equivalent using an expression in Map Algebra is as follows:
OutRas = SetNull(InRas1 < 5, InRas1)
上式表示将栅格值小于5的值赋空值,其余保留。
根据栅格值的特征,我们可以设置保留大于4的栅格值。
计算的结果如下图。效果不错。
参考文献
https://blog.csdn.net/qq_44894692/article/details/123387666
https://blog.csdn.net/amyniez/article/details/126788044
https://zhuanlan.zhihu.com/p/129351199