Learn R Programming

oce (version 0.9-20)

mapDirectionField: Add a Direction Field to an Existing Map

Description

Plot a direction field on a existing map.

Usage

mapDirectionField(longitude, latitude, u, v, scale = 1, length = 0.05, code = 2, col = par("fg"), ...)

Arguments

longitude, latitude
vectors of the starting points for arrows.
u, v
components of a vector to be shown as a direction field.
scale
latitude degrees per unit of u or v.
length
length of arrow heads, passed to arrows.
code
code of arrows, passed to arrows.
col
colour of arrows. This may be a single colour, or a matrix of colours of the same dimension as u.
...
optional arguments passed to arrows, e.g. angle and lwd can be useful in differentiating different fields.

Details

Adds arrows for a direction field on an existing map. There are different possibilities for how longitude, latitude and u and v match up. In one common case, all four of these are matrices, e.g. output from a numerical model. In another, longitude and latitude are the coordinates along the matrices, and are thus stored in vectors with lengths that match appropriately.

See Also

A map must first have been created with mapPlot.

Other functions related to maps: lonlat2map, lonlat2utm, map2lonlat, mapArrows, mapAxis, mapContour, mapGrid, mapImage, mapLines, mapLocator, mapLongitudeLatitudeXY, mapPlot, mapPoints, mapPolygon, mapScalebar, mapText, mapTissot, oceCRS, shiftLongitude, utm2lonlat

Examples

Run this code
## Not run: 
# library(oce)
# data(coastlineWorld)
# par(mar=rep(2,4))
# mapPlot(coastlineWorld, longitudelim=c(-120,-55), latitudelim=c(35,50),
#         proj="lambert", parameters=c(lat0=40,lat1=60),
#         orientation=c(90,-90,0))
# lon <- seq(-120, -60, 15)
# lat <- 45 + seq(-15, 15, 5)
# lonm <- matrix(expand.grid(lon,lat)[,1], nrow=length(lon))
# latm <- matrix(expand.grid(lon,lat)[,2], nrow=length(lon))
# ## vectors pointed 45 degrees clockwise from north
# u <- matrix(1/sqrt(2), nrow=length(lon), ncol=length(lat))
# v <- matrix(1/sqrt(2), nrow=length(lon), ncol=length(lat))
# mapDirectionField(lon, lat, u, v, scale=3)
# mapDirectionField(lonm, latm, 0, 1, scale=3, col='red')
# # Color code by longitude, using thick lines
# col <- colormap(lonm)$zcol
# mapDirectionField(lonm, latm, 1, 0, scale=3, col=col, lwd=2)
# ## End(Not run)

Run the code above in your browser using DataLab