If a projection is already being used (e.g. as set by mapPlot()) then only longitude and latitude should be given, and the other arguments will be inferred by lonlat2map. This is important because otherwise, if a new projection is called for, it will ruin any additions to the existing plot.

lonlat2map(longitude, latitude, projection = "", debug = getOption("oceDebug"))



a numeric vector containing decimal longitudes, or a list containing items named longitude and latitude, in which case the indicated values are used, and next argument is ignored.


a numeric vector containing decimal latitude (ignored if longitude is a list, as described above).


optional indication of projection. This must be character string in the format used by the rgdal package; see mapPlot().)


an integer specifying whether debugging information is to be printed during the processing. This is a general parameter that is used by many oce functions. Generally, setting debug=0 turns off the printing, while higher values suggest that more information be printed. If one function calls another, it usually reduces the value of debug first, so that a user can often obtain deeper debugging by specifying higher debug values.


A list containing x and y.


This uses rgdal, and will fail on i386/windows machines unless that package is version 1.3-9 or higher.

See also

mapLongitudeLatitudeXY is a safer alternative, if a map has already been drawn with mapPlot(), because that function cannot alter an existing projection. map2lonlat() is an inverse to map2lonlat.

Other functions related to maps: formatPosition(), lonlat2utm(), map2lonlat(), mapArrows(), mapAxis(), mapContour(), mapCoordinateSystem(), mapDirectionField(), mapGrid(), mapImage(), mapLines(), mapLocator(), mapLongitudeLatitudeXY(), mapPlot(), mapPoints(), mapPolygon(), mapScalebar(), mapText(), mapTissot(), oceCRS(), shiftLongitude(), usrLonLat(), utm2lonlat()


canProject <- .Platform$OS.type!="windows"&&requireNamespace("rgdal") if (canProject) { library(oce) ## Cape Split, in the Minas Basin of the Bay of Fundy cs <- list(longitude=-64.49657, latitude=45.33462) xy <- lonlat2map(cs, projection="+proj=merc") map2lonlat(xy) }
#> $longitude #> [1] -64.49657 #> #> $latitude #> [1] 45.33462 #>