# Changes between Version 3 and Version 4 of udg/ecoms/RPackage/examples/continentalSelection

Ignore:
Timestamp:
Feb 20, 2014 3:05:19 PM (8 years ago)
Comment:

--

### Legend:

Unmodified
 v3 == Alternative visualization tools: Monsoon in the Indian subcontinent = Alternative visualization tools: Monsoon in the Indian subcontinent So far we have shown plotting examples using the trellis plots generated by the spplot method. In this examples we show alternative plotting options using more standard R plotting functions for gridded data. To this aim, we load the precipitation data of 1997 for the lead month 1 forecast over the Indian subcontinent, considering the monsoon season from June to September: The help files of functions image and contour for instance, indicate the type of data structure required for displaying three-dimensional or spatial data (''images'') by many R standard functions. Essentially, this is a list of elements specifying the x and y positions of the elements to be displayed as a grid, being the field z a matrix of values whose positions coincide with those of the x and y elements. As an illustration, the following function produces such a list from an input SpatialGridDataFrame, by indicating also the corresponding data column to be represented, as in the argument zcol of spplot. This function takes care of the appropriate ordering of the data for spatial consistency. Note that by default, if zcol is omitted, the function will represent the first column of the data slot. {{{ sgdf2xyz <- function(sgdf, zcol = 1) { coords <- coordinates(sgdf) z <- slot(sgdf, "data")[ ,zcol] aux <- cbind(coords, z) aux.ordered <- aux[order(aux[ ,2], aux[ ,1]), ] x <- unique(aux.ordered[ ,1]) y <- unique(aux.ordered[ ,2]) z <- t(matrix(aux.ordered[ ,3], nrow = length(y), ncol = length(x), byrow = TRUE)) xyz.list <- list("x" = x, "y" = y, "z" = z) return(xyz.list) } }}} We create the xyz object for data visualization using several basic R functions: {{{ xyz <- sgdf2xyz(sgdf) }}} == image function {{{ image(xyz, asp = 1, col = rev(topo.colors(21))) lines(wl) }}} [[Image(image.png)]] == contour function contour can be used alone or in combination with other plots by setting the argument add = TRUE {{{ par(mfrow = c(1,2)) contour(xyz, levels=seq(0,4000,200), labcex = 1.2) image(xyz, col = terrain.colors(21)) contour(xyz, col = "blue", add = TRUE) # Use dev.off() To restore the original par settings }}} [[Image(contour.png)]]