-
Notifications
You must be signed in to change notification settings - Fork 0
/
example
59 lines (45 loc) · 2.24 KB
/
example
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
# Example running getmap2 and translating the numbers in the matrices to something else
# This uses 15 landscapes from Skaraborgs län Block SMD data
# load libraries that are needed
require(fields)
require(plyr)
# Define paths that will be used to access input files #
code_path <-"C:/a1workmain/ES_synthesis/BC_OSR/code/OSR_20150409"
map_path <- paste(code_path, "/maps",sep="")
# import functions
source('getmap2.R')
source('plotmat.R')
# selecting a set of (rectangular) sample landscapes - leftbottom and upperright coordinates stored in "sample.coord"
setwd(map_path)
VNsites<-read.table("Kopie von coordinates for 15 OSR fields sampled in 2013.txt",h=T)
selcoord<-function(fields,rad,X,Y){
Xrect<-c(range(X[fields])+c(-rad,rad))
Yrect<-c(range(Y[fields])+c(-rad,rad))
return(c(Xrect[1],Yrect[1],Xrect[2],Yrect[2]))}
plot(VNsites[,3],VNsites[,2],type="n") # plotting the sites
#VNsites$lands.samp<-c(1,2,2,3,4,4,4,4,5,6,7,7,8,8,9) # manual grouping
VNsites$lands.samp<-1:15 # manual grouping
sample.coord<-matrix(NA,nrow=max(VNsites$lands.samp),ncol=4)
for(i in 1:max(VNsites$lands.samp)){
sample.coord[i,]<-selcoord(fields=which(VNsites$lands.samp==i),rad=5000,X=VNsites[,3],Y=VNsites[,2])
}
plot(VNsites[,3],VNsites[,2],type="n")
text(VNsites[,3],VNsites[,2],labels=VNsites[,1])
rectv<-function(x)rect(x[1],x[2],x[3],x[4])
apply(sample.coord,1,rectv)
# Capture all 15 landscapes from block-SMD data fro 2009 and 2010
map_2009<-getmap2(map_path=map_path,origin_region=list(E=1302000,N=6410000),origin_sample=list(E= sample.coord[,1],N=sample.coord[,2]),
size_landsc_m=10000, cell.size=25, year = 2009,prefix="cSMD_Ska",suffix="",filetype="mat")
map_2010<-getmap2(map_path=map_path,origin_region=list(E=1302000,N=6410000),origin_sample=list(E= sample.coord[,1],N=sample.coord[,2]),
size_landsc_m=10000, cell.size=25, year = 2010,prefix="cSMD_Ska",suffix="",filetype="mat")
# converting between landuse codes
tempy<-map_2009
setwd(map_path)
rastercode<-read.table("rastercode_20150416.txt",h=T)
for(i in 1:15){
tempy[[2]][[i]]<-mapvalues(map_2009[[2]][[i]],rastercode[,'number'],rastercode[,'OSR_biocontrol_LU'], warn_missing = FALSE)
}
# plot result
par(mfrow=c(1,2))
plotmat(tempy[[2]][[i]])
plotmat(map_2009[[2]][[i]])