scale_power: Scale power

View source: R/scales.R

scale_powerR Documentation

Scale power

Description

Creates a continuous power scale, where input values are transformed with power_trans(exponent) before calculating the output.

Power scales can be useful in transforming positively skewed data. A square-root or cube-root scale can be helpful in dealing with right-skewed data.

A square-root scale can be defined with scale_power(exponent = 0.5, ...) (the default). A square-root scale is a good choice for scaling the radius of point data, as this would result in a linear scale for the area of each point.

Usage

scale_color_power(
  col,
  palette = scales::viridis_pal(),
  na_color = "#000000",
  exponent = 0.5,
  limits = NULL,
  breaks = NULL,
  n_ticks = 6,
  tick_format = format_number,
  col_label = "{.col}",
  legend = TRUE
)

scale_power(
  col,
  range = 0:1,
  na_value = 0,
  exponent = 0.5,
  limits = NULL,
  breaks = NULL,
  col_label = "{.col}",
  legend = TRUE
)

Arguments

col

<name | string> The name of the column containing data to be scaled. Must be a valid input to rlang::ensym(); either a named column (non-standard evaluation), a string. Supports tidy-eval.

palette

<color|function> The colour palette of the colour scale. Must be a:

  • vector of RGBA hex colours,

  • a palette generator function, taking a length parameter, or

  • a palette ramp created from scales::colour_ramp()

A scales::colour_ramp() interpolator is created from the input palette.

na_color

<color> The colour value for NA input values.

exponent

<number> The power exponent.

limits

<c(min, max)> The limits of the scale's input. If NULL, limits are computed from layer data. Values outside the range of limits are clamped.

breaks

<numeric | function> The breaks of the scale, allowing to define a piecewise scale. The scale palette or numeric range are linearly interpolated (by length) and mapped onto breaks. Breaks outside the limits of the scale are discarded.

If not NULL, breaks must be either:

  • a numeric vector

  • a breaks function, taking a numeric vector argument (e.g. breaks_linear())

Defaults to breaks_trans() where trans is the scale's transformer.

n_ticks

<number> The number of ticks to display on the legend. Must be >= 2. The legend size will grow and shrink depending on this value.

tick_format

<function> A label function taking a vector of ticks returning formatted ticks.

col_label

<string | function> A template string or a label function for customising the column name in the legend.

  • if col_label is a string, {.col} may be used to represent the col name

  • if col_label is a function, the function must take a single argument: the col name

legend

<boolean> Indicate whether the legend should be displayed for this scale.

range

<numeric> The output range of the numeric scale. Must be length >= 2. A stats::approxfun() interpolator is created from the input range.

na_value

<number> The output value for NA input values.

See Also

Other scales: rescale_center(), rescale_diverge(), scale_category(), scale_identity(), scale_linear(), scale_log(), scale_quantile(), scale_quantize(), scale_symlog(), scale_threshold()


anthonynorth/rdeck documentation built on Feb. 2, 2024, 1:12 p.m.