NetCDF又称科学数据集,能够存储温度、湿度、风速、风向等多个维度的文件格局。本次气象数据来源于天文遥感生态网平台。
下面我们来介绍若何在ArcMap中利用NetCDF。
在ArcMap中显示NetCDF数据
ArcMap不克不及间接读取NetCDF数据,需要利用GP东西Make NetCDF Raster Layer(创建NetCDF栅格图层),将NetCDF生成栅格图层。
显示特定年份的温度图层
体例一:间接在图层属性中设置。
展开全文
体例二:利用GP东西Select by Dimention(按维度选择)。
根据时间动态展现数据
起首对图层启用时间。
然后翻开时间滑块。
根据年份,导出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")
文章来源引用天文遥感生态网平台。