Learn R Programming

ggvis (version 0.4.1)

scale_ordinal: Add a ordinal, nominal, or logical scale to a ggvis object.

Description

Ordinal, nominal, and logical scales are all categorical, and are treated similarly by ggvis.

Usage

scale_ordinal(vis, property, domain = NULL, range = NULL, reverse = NULL,
  round = NULL, points = NULL, padding = NULL, sort = NULL,
  name = property, label = NULL, override = NULL)

scale_nominal(vis, property, domain = NULL, range = NULL, reverse = NULL, round = NULL, points = NULL, padding = NULL, sort = NULL, name = property, label = NULL, override = NULL)

scale_logical(vis, property, domain = NULL, range = NULL, reverse = NULL, round = NULL, points = NULL, padding = NULL, sort = NULL, name = property, label = NULL, override = NULL)

Arguments

vis
A ggvis object.
property
The name of a property, such as "x", "y", "fill", "stroke", etc.
domain
The domain of the scale, representing the set of data values. For ordinal scales, a character vector; for quantitative scales, a numeric vector of length two. Either value (but not both) may be NA, in which case domainMin or domainMax
range
The range of the scale, representing the set of visual values. For numeric values, the range can take the form of a two-element array with minimum and maximum values. For ordinal data, the range may by an array of desired output values, which are mapped t
reverse
If true, flips the scale range.
round
If true, rounds numeric output values to integers. This can be helpful for snapping to the pixel grid.
points
If TRUE (default), distributes the ordinal values over a quantitative range at uniformly spaced points. The spacing of the points can be adjusted using the padding property. If FALSE, the ordinal scale will construct evenly-space
padding
Applies spacing among ordinal elements in the scale range. The actual effect depends on how the scale is configured. If the points parameter is true, the padding value is interpreted as a multiple of the spacing between points. A reasonable value is 1.0,
sort
If TRUE, the values in the scale domain will be sorted according to their natural order. Default is FALSE.
name
Name of the scale, such as "x", "y", "fill", etc. Can also be an arbitrary name like "foo".
label
Label for the scale. Used for axis or legend titles.
override
Should the domain specified by this ggvis_scale object override other ggvis_scale objects for the same scale? Useful when domain is manually specified. For example, by default, the domain of the scale will contain the range of the data, but when this is T

See Also

scales, scale_numeric, https://github.com/trifacta/vega/wiki/Scales#ordinal-scale-properties, https://github.com/mbostock/d3/wiki/Ordinal-Scales

Other scales: scale_datetime; scale_numeric

Examples

Run this code
p <- PlantGrowth %>% ggvis(~group, ~weight) %>% layer_points()

p
p %>% scale_nominal("x", padding = 0)
p %>% scale_nominal("x", padding = 1)

p %>% scale_nominal("x", reverse = TRUE)

p <- ToothGrowth %>% group_by(supp) %>%
  ggvis(~len, fill = ~supp) %>%
  layer_histograms(width = 4, stack = TRUE)

# Control range of fill scale
p %>% scale_nominal("fill", range = c("pink", "lightblue"))

# There's no default range when the data is categorical but the output range
# is continuous, as in the case of opacity. In these cases, you can
# manually specify the range for the scale.
mtcars %>% ggvis(x = ~wt, y = ~mpg, opacity = ~factor(cyl)) %>%
  layer_points() %>%
  scale_nominal("opacity", range = c(0.2, 1))

Run the code above in your browser using DataLab