## Not run:
# proj <- CRS('+proj=longlat +datum=WGS84')
#
# df <- expand.grid(x=seq(-2, 2, .01), y=seq(-2, 2, .01))
# df$z <- with(df, (3*x^2 + y)*exp(-x^2-y^2))
# r1 <- rasterFromXYZ(df, crs=proj)
# df$z <- with(df, x*exp(-x^2-y^2))
# r2 <- rasterFromXYZ(df, crs=proj)
# df$z <- with(df, y*exp(-x^2-y^2))
# r3 <- rasterFromXYZ(df, crs=proj)
# s <- stack(r1, r2, r3)
# names(s) <- c('R1', 'R2', 'R3')
#
# vectorplot(r1)
# vectorplot(r2, par.settings=RdBuTheme())
# vectorplot(r3, par.settings=PuOrTheme())
#
# ## scaleSlope, aspX and aspY
# vectorplot(r1, scaleSlope=FALSE)
# vectorplot(r1, scaleSlope=1e-5)
# vectorplot(r1, scaleSlope=5e-6, alpha=0.6)
# vectorplot(r1, scaleSlope=TRUE, aspX=0.1, alpha=0.6)
# vectorplot(r1, scaleSlope=TRUE, aspX=0.3, alpha=0.3)
#
#
# ## Reference vector
# # Default size (1)
# vectorplot(r1, region = FALSE,
# key.arrow = list(label = 'm/s'))
# vectorplot(r1, region = FALSE,
# key.arrow = list(size = 2, label = 'm/s'))
#
# ## A vector field defined with horizontal and vertical components
# u <- v <- raster(xmn=0, xmx=2, ymn=0, ymx=2, ncol=1e3, nrow=1e3)
# x <- init(u, v='x')
# y <- init(u, v='y')
# u <- y * cos(x)
# v <- y * sin(x)
# field <- stack(u, v)
# names(field) <- c('u', 'v')
#
# vectorplot(field, isField='dXY', narrows=5e2)
#
# ## We can display both components as the background
# vectorplot(field, isField='dXY', narrows=5e2, region=field)
#
# ## It is also possible to use a RasterStack
# ## with more than 2 layers when isField='dXY'
# u1 <- cos(y) * cos(x)
# v1 <- cos(y) * sin(x)
# u2 <- sin(y) * sin(x)
# v2 <- sin(y) * cos(x)
# field <- stack(u, u1, u2, v, v1, v2)
# names(field) <- c('u', 'u1', 'u2', 'v', 'v1', 'v2')
#
# vectorplot(field, isField='dXY',
# narrows=300, lwd.arrows=.4,
# par.settings=BTCTheme(),
# layout=c(3, 1))
#
# ## uLayer and vLayer define which layers contain
# ## horizontal and vertical components, respectively
# vectorplot(field, isField='dXY',
# narrows=300,
# uLayer=1:3,
# vLayer=6:4)
#
# ##################################################################
# ## Streamplot
# ##################################################################
# ## If no cluster is provided, streamplot uses parallel::mclapply except
# ## with Windows. Therefore, next code could spend a long time under
# ## Windows.
# streamplot(r1)
#
# ## With a cluster
# hosts <- rep('localhost', 4)
# cl <- parallel::makeCluster(hosts)
# streamplot(r2, cl=cl,
# par.settings=streamTheme(symbol=brewer.pal(n=5,
# name='Reds')))
# parallel::stopCluster(cl)
#
# ## Without parallel
# streamplot(r3, parallel=FALSE,
# par.settings=streamTheme(symbol=brewer.pal(n=5,
# name='Greens')))
#
# ## Configuration of droplets and streamlets
# streamplot(s, layout=c(1, 3), droplet=list(pc=.2), streamlet=list(L=20),
# par.settings=streamTheme(cex=.6))
# ## End(Not run)
Run the code above in your browser using DataLab