【发布时间】:2018-05-19 13:07:38
【问题描述】:
每个多边形都与一个表的许多值相关联。
thiessen <- readOGR(dsn = getwd(), layer = poly)
OGR data source with driver: ESRI Shapefile
Source: ".../raingauges/shp", layer: "thiessen_pol"
with 10 features
It has 5 fields
head(thiessen)
est est_name p001 p002 p003
0 2 borges 1 8 2
1 0 e018 2 4 3
2 5 starosa 5 15 1
3 6 delfim 4 2 2
4 1 e087 1 1 3
5 3 e010 0 1 0
“est”和“est_name”列与雨量计的 ID 和名称相关。以下列对我很重要,代表第 1 天、第 2 天等的降水量值(在示例中我只保留了 3 天,但实际上,我有 8 年的每日降水数据)。
我需要将多边形转换为栅格,但表格的每个字段(p001、p002 列等)都有一个栅格。
有一种简单的方法可以使用 R 中的函数 rasterize 将多边形转换为栅格。
r_p001 <- rasterize(thiessen, r, field = thiessen$p001)
plot(r_p001)
writeRaster(r_p001, filename=".../raingauges/shp/r_p001.tif")
问题是我需要手动设置表格的字段(列)以及要转换为栅格的多边形值。由于我有大约 2900 天(每个雨量计有 2900 列降水值),因此无法手动进行。
该文档无助于阐明如何自动化此过程,而且我在 Internet 上没有找到任何可以帮助我的东西。
有谁知道如何自动将每个字段转换为栅格并保存为 tif 格式?
【问题讨论】:
-
如果没有可重复的例子,很难回答你。也就是说,您可以编写一个函数并运行一个循环,或者重新在电子表格中编写一个序列并将 2900 行粘贴到脚本中。