Skip to contents

Creates a map compass.

Usage

tm_compass(
  north = 0,
  type = NA,
  text.size = 0.8,
  size = NA,
  show.labels = 1,
  cardinal.directions = c("N", "E", "S", "W"),
  text.color = NA,
  color.dark = NA,
  color.light = NA,
  lwd = 1,
  position = NA,
  bg.color = NA,
  bg.alpha = NA,
  just = NA,
  fontsize = NULL
)

Arguments

north

north direction in degrees: 0 means up, 90 right, etc.

type

compass type, one of: "arrow", "4star", "8star", "radar", "rose". The default is controlled by tm_layout (which uses "arrow" for the default style)

text.size

relative font size

size

size of the compass in number of text lines. The default values depend on the type: for "arrow" it is 2, for "4star" and "8star" it is 4, and for "radar" and "rose" it is 6.

show.labels

number that specifies which labels are shown: 0 means no labels, 1 (default) means only north, 2 means all four cardinal directions, and 3 means the four cardinal directions and the four intercardinal directions (e.g. north-east).

cardinal.directions

labels that are used for the cardinal directions north, east, south, and west.

text.color

color of the text. By default equal to the argument attr.color of tm_layout.

color.dark

color of the dark parts of the compass, typically (and by default) black.

color.light

color of the light parts of the compass, typically (and by default) white.

lwd

line width of the compass

position

position of the compass. Vector of two values, specifying the x and y coordinates. Either this vector contains "left", "LEFT", "center", "right", or "RIGHT" for the first value and "top", "TOP", "center", "bottom", or "BOTTOM" for the second value, or this vector contains two numeric values between 0 and 1 that specifies the x and y value of the left bottom corner of the compass. The uppercase values correspond to the position without margins (so tighter to the frame). The default value is controlled by the argument "attr.position" of tm_layout.

bg.color

Background color

bg.alpha

Transparency of the background color. Number between 0 (totally transparent) and 1 (not transparent). By default, the alpha value of the bg.color is used (normally 1).

just

Justification of the attribute relative to the point coordinates. The first value specifies horizontal and the second value vertical justification. Possible values are: "left" , "right", "center", "bottom", and "top". Numeric values of 0 specify left/bottom alignment and 1 right/top alignment. This option is only used, if position is specified by numeric coordinates. The default value is controlled by the argument "attr.just" of tm_layout.

fontsize

deprecated: renamed to text.size

Examples

current.mode <- tmap_mode("plot")
#> tmap mode set to plotting

data(NLD_muni)

qtm(NLD_muni, theme = "NLD") + tm_compass()
#> old-style crs object detected; please recreate object with a recent sf::st_crs()
#> old-style crs object detected; please recreate object with a recent sf::st_crs()
#> old-style crs object detected; please recreate object with a recent sf::st_crs()
#> old-style crs object detected; please recreate object with a recent sf::st_crs()
#> old-style crs object detected; please recreate object with a recent sf::st_crs()

qtm(NLD_muni, theme = "NLD") + tm_compass(type="radar", position=c("left", "top"), show.labels = 3)
#> old-style crs object detected; please recreate object with a recent sf::st_crs()
#> old-style crs object detected; please recreate object with a recent sf::st_crs()
#> old-style crs object detected; please recreate object with a recent sf::st_crs()
#> old-style crs object detected; please recreate object with a recent sf::st_crs()
#> old-style crs object detected; please recreate object with a recent sf::st_crs()


# restore current mode
tmap_mode(current.mode)
#> tmap mode set to plotting