One-to-many table relationship to shapefile polygon in spplot / plot - possible?
Depends on your GIS! Shapefiles only have a 1-1 relationship, but that's because they are a bit rubbish. If you use a proper spatial database then you can do one-many. This is an application for a PostGIS or Spatialite database, and if your GIS can read that (Qgis for example) then you are sorted.
I want to do it in R. R can do quick and pretty graphs and maps!
The result data I am trying to map using spplot has 1 to 70 years periods. I want to produce maps per period, for 10 years or more for forest management regimes in forest stand.
I wouldn't reshape the data in R to create a possibly sparse matrix,
and then have to code in column names with expressions (e.g.
data[,paste("Year",y,sep="")], which I think is icky). I would just
create a spatial polygons/points data set with just an ID column, and
put your ID/Period/Age data in a non-spatial data frame. Then when you
want to plot a particular thing, just match up the data with the
spatial data and plot (using the 'match' function).
This is what actually I wanted!
"column names with expressions (e.g. data[,paste("Year",y,sep="")]" in
shapefile database?
Yes, created Crop_ID which is supposed to be Polygon ID in my
foreststand.dbf. I have also Crop_ID, Period, Age in non spatial table
i.e. harvest.dbf
This is the harvest.dbf
names(harvest.dat) = c("CROP_ID", "CROPTYPE",
"Period","Ini_Age","Cut_Age", "Area_Cut")
Barry, any snippet how to use match in spplot or plot.
Thanks. Noli