Learn R Programming

rgee (version 0.5.0)

Map: Module to display Earth Engine (EE) spatial objects

Description

Create interactive visualizations of spatial EE objects (ee.Geometry, ee.Image, ee.Feature, and ee.FeatureCollection) through mapview.

Usage

Map

Arguments

Format

An object of class environment with the following functions:

  • addLayer(eeObject, visParams, name = NULL, shown = TRUE, opacity = 1): Adds a given EE object to the map as a layer.

    • eeObject: The object to add to mapview.

    • visParams: List of parameters for visualization. See details.

    • name: The name of the layer.

    • shown: A flag indicating whether the layer should be on by default.

    • opacity: The layer's opacity represented as a number between 0 and 1. Defaults to 1.

  • setCenter(lon = 0, lat = 0, zoom = NULL): Centers the map view at the given coordinates with the given zoom level. If no zoom level is provided, it uses 1 by default.

    • lon: The longitude of the center, in degrees.

    • lat: The latitude of the center, in degrees.

    • zoom: The zoom level, from 1 to 24.

  • setZoom(zoom = NULL): Sets the zoom level of the map.

    • zoom: The zoom level, from 1 to 24.

  • centerObject(eeObject, zoom = NULL, maxError = ee$ErrorMargin(1)): Centers the map view on a given object. If no zoom level is provided, it will be predicted according to the bounds of the Earth Engine object specified.

    • eeObject: EE object.

    • zoom: The zoom level, from 1 to 24.

    • maxError: Max error when input image must be reprojected to an explicitly requested result projection or geodesic state.

Details

Map takes advantage of the getMapId EE method to fetch and return an ID dictionary beind used to create layers in a mapview object. Users can specify visualization parameters to Map\$addLayer by using the visParams argument. It will depend on the type of spatial EE object. For ee$Image, the parameters available are:

Parameter Description Type
bands Comma-delimited list of three band names to be mapped to RGB list
min Value(s) to map to 0 number or list of three numbers, one for each band
max Value(s) to map to 1 number or list of three numbers, one for each band
gain Value(s) by which to multiply each pixel value number or list of three numbers, one for each band
bias Value(s) to add to each Digital Number (DN) value number or list of three numbers, one for each band
gamma Gamma correction factor(s) number or list of three numbers, one for each band
palette List of CSS-style color strings (single-band images only) comma-separated list of hex strings
opacity The opacity of the layer (0.0 is fully transparent and 1.0 is fully opaque) number

If you add an ee$Image to the map without any additional parameters, by default Map$addLayer() assigns the first three bands to red, green, and blue bands, respectively. The default stretch is based on the min-max range. By the other hand, for ee$Geometry, ee$Feature, and ee$FeatureCollection. The available parameters are:

  • color: A hex string in the format RRGGBB specifying the color to use for drawing the features. By default 000000.

  • pointRadius: The radius of the point markers. By default 3.

  • strokeWidth: The width of lines and polygon borders. By default 3.

Examples

Run this code
# NOT RUN {
library(rgee)

ee_reattach() # reattach ee as a reserved word
ee_Initialize()

# Case 1: Geometry*
geom <- ee$Geometry$Point(list(-73.53, -15.75))
Map$centerObject(geom, zoom = 13)
m1 <- Map$addLayer(
  eeObject = geom,
  visParams = list(
    pointRadius = 10,
    color = "FF0000"
  ),
  name = "Geometry-Arequipa"
)

# Case 2: Feature
eeobject_fc <- ee$FeatureCollection("users/csaybar/DLdemos/train_set")$
  first()
m2 <- Map$addLayer(
  eeObject = ee$Feature(eeobject_fc),
  name = "Feature-Arequipa"
)
m2 + m1

# Case 3: FeatureCollection
eeobject_fc <- ee$FeatureCollection("users/csaybar/DLdemos/train_set")
Map$centerObject(eeobject_fc)
m3 <- Map$addLayer(eeObject = eeobject_fc, name = "FeatureCollection")
m3 + m2 + m1

# Case 4: Image
image <- ee$Image("LANDSAT/LC08/C01/T1/LC08_044034_20140318")
Map$centerObject(image)
m4 <- Map$addLayer(
  eeObject = image,
  visParams = list(
    bands = c("B4", "B3", "B2"),
    max = 10000
  ),
  name = "SF"
)
m4
# }

Run the code above in your browser using DataLab