python获取栅格点和面值的实现

(编辑:jimmy 日期: 2024/11/12 浏览:2)

1、获取指定位置的点值:

OutputFile = open(statisticResultTXT, 'w') 

cellvalue=arcpy.GetCellValue_management(inputfilepath+filenname+".tif",staionXY, "1")

OutputFile.write(stationID+"_"+filenname+""+str(cellvalue)+'\n')

OutputFile.close()

2、获取区域的均值极值

utputFile = open(statisticResult, 'w') 
env.workspace = ('E:\loessplateau\ET_Spline\extract_year')
rlist = arcpy.ListRasters('*','tif')
for file in rlist:         
minValueInfo= arcpy.GetRasterProperties_management(file,'MINIMUM')
minValue = minValueInfo.getOutput(0)
maxValueInfo = arcpy.GetRasterProperties_management(file,'MAXIMUM')
maxValue = maxValueInfo.getOutput(0)
meanValueInfo = arcpy.GetRasterProperties_management(file,'MEAN')
meanValue = meanValueInfo.getOutput(0)
print file + ',' + str(minValue) + ',' + str(maxValue) + ',' + str(meanValue) +'\n'
OutputFile.write(file + ',' + str(minValue) + ',' + str(maxValue) + ',' + str(meanValue) +'\n')
OutputFile.close()

补充知识:python_计算格点数据降水变化斜率

我就废话不多说了,还是直接看代码吧!

import numpy as np
import pandas as pd
import codecs
 
path=r'C:\try.csv' #读取格点数据CSV
data=pd.read_csv(path,encoding='gbk')
outpath=r'C:\rate.csv'#新建存放斜率的CSV
file_csv = codecs.open(outpath,'w+','utf-8') #打开方式
data1=data.T #转置
n=80 #格点数
m=17 #年数
sl=[] #空列表
for i in list(range(0,80)):#循环计算80个格点的变化斜率
  print (i)
  sp=[]
  y=data1[i]
  y=y.values
 
  for k in range(0,m-1):
    for j in range(k+1,m):
      print(k,j)
     
      s=(y[j]-y[k])/(j-k)  #计算斜率
      sp.append(s)
  sl.append(np.median(sp))
  
slop= pd.DataFrame(sl)
slop.to_csv(outpath,header=['slop']) #将SLOP写入CSV

以上这篇python获取栅格点和面值的实现就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

一句话新闻

一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?