NetCDF数据在ArcMap中的使用
分享
NetCDF又称科学数据集,可以存储温度、湿度、风速、风向等多个维度的文件格式。
下图是NetCDF发布到ArcGIS Server后的展示。
1、在ArcMap中显示NetCDF数据
ArcMap不能直接读取NetCDF数据,需要使用GP工具Make NetCDF Raster Layer(创建NetCDF栅格图层),将NetCDF生成栅格图层。
2、显示特定年份的温度图层
方式一:直接在图层属性中设置。
方式二:使用GP工具Select by Dimention(按维度选择)。
3、按照时间动态展示数据
首先对图层启用时间,然后打开时间滑块。
4、按照年份,导出NetCDF的每幅栅格
1)设置NetCDF图层的波段维度为Year。
2)点击这里下载NetCDF_time_slice_to_Raster.zip,解压后,添加到目录窗口中,然后运行工具。
生成结果是以Band_命名的。我们可以稍微改下代码,以年份命名。打开脚本方法如下:
修改后的脚本如下:
参考及扩展阅读
文章来源:https://blog.csdn.net/ceibake/article/details/84787465
NetCDF又称科学数据集,可以存储温度、湿度、风速、风向等多个维度的文件格式。
下图是NetCDF发布到ArcGIS Server后的展示。
1、在ArcMap中显示NetCDF数据
ArcMap不能直接读取NetCDF数据,需要使用GP工具Make NetCDF Raster Layer(创建NetCDF栅格图层),将NetCDF生成栅格图层。
2、显示特定年份的温度图层
方式一:直接在图层属性中设置。
方式二:使用GP工具Select by Dimention(按维度选择)。
3、按照时间动态展示数据
首先对图层启用时间,然后打开时间滑块。
4、按照年份,导出NetCDF的每幅栅格
1)设置NetCDF图层的波段维度为Year。
2)点击这里下载NetCDF_time_slice_to_Raster.zip,解压后,添加到目录窗口中,然后运行工具。
生成结果是以Band_命名的。我们可以稍微改下代码,以年份命名。打开脚本方法如下:
修改后的脚本如下:
# ---------------------------------------------------------------------------
# export_netCDF_slice.py
# Created on: 2011-06-02 10:18:49.00000
# Description: This scipt will create a TIFF raster from a NetCDF layer, and
# save each band of that TIFF as a seperate TIF raster (for each time slcie in a netcdf file)
# ---------------------------------------------------------------------------
# Import modules
import arcpy, os
#Inputs
Input_NetCDF_layer = arcpy.GetParameterAsText(0)
Output_Folder = arcpy.GetParameterAsText(1)
Input_Name = Input_NetCDF_layer
Output_Raster = Output_Folder + os.sep + "NetCDF_Raster.tif"
#Copy the NetCDF layer as a TIF file.
arcpy.CopyRaster_management(Input_Name, Output_Raster)
arcpy.AddMessage(Output_Raster + " " + "created from NetCDF layer")
#Reading number of band information from saved TIF
bandcount = arcpy.GetRasterProperties_management (Output_Raster, "BANDCOUNT")
resultValue = bandcount.getOutput(0)
count = 1
# Year
yearN = 1875
arcpy.AddMessage("Exporting individual bands from" + Output_Raster)
#Loop through the bands and copy bands as a seperate TIF file.
while count <= int(resultValue):
Input_Raster_Name = Output_Raster + os.sep+ "Band_" + str(count)
Output_Band = Output_Folder + os.sep + str(yearN) +".tif"
arcpy.CopyRaster_management(Input_Raster_Name, Output_Band)
arcpy.AddMessage("Band_" + str(count) +".tif" + " " "exported" + " " + "successfully")
yearN +=5
count +=1
# The following will delete the TIFF file that was created by CopyRaster tool.
arcpy.Delete_management(Output_Raster,"#")
arcpy.AddMessage("Tool Executed Successfully")
参考及扩展阅读
文章来源:https://blog.csdn.net/ceibake/article/details/84787465
0 个评论
相关问题
- 如何优雅的使用ArcGIS知乎?
- 作为Desktop用户对数据的获取比较乏力,可能缺了哪些知识?
- 有谁知道哪里可以免费获取各省市地图数据呢,包括详细的shape文件数据
- 苹果系统下可以使用arcgis 吗?
- 有栅格数据a(大数据),小数据b,怎么从a中扣掉b,得到a数据剩下的部分?栅格能裁剪取反吗?
- 请问arcmap如何使用多线程?
- 在Visual studio 2015 中使用 Arcgis API for JavaScript v3.16 如何实现代码智能提示?
- 用ArcMap输入7参数,从wgs84坐标系转西安80坐标系,转后误差较大,4米左右,请问这是正常的吗?如何能提高转换精度?
- 在windows server2008 R2 64位中安装了portal 10.5 设置好托管arcgis server站点,并用data store为托管数据库,发布数据出错
- 学会了Arcmap软件还有必要自学Mapgis软件吗?
- arcgis runtime for andriod 100.1 如何使用eclipse开发