add_axis: Add a vega axis specification to a ggvis plot

View source: R/guide_axis.R

add_axisR Documentation

Add a vega axis specification to a ggvis plot

Description

Axis specifications allow you to either override the default axes, or additional axes.

Usage

add_axis(
  vis,
  type,
  scale = NULL,
  orient = NULL,
  title = NULL,
  title_offset = NULL,
  format = NULL,
  ticks = NULL,
  values = NULL,
  subdivide = NULL,
  tick_padding = NULL,
  tick_size_major = NULL,
  tick_size_minor = tick_size_major,
  tick_size_end = tick_size_major,
  offset = NULL,
  layer = "back",
  grid = TRUE,
  properties = NULL
)

hide_axis(vis, scale)

Arguments

vis

A ggvis object.

type

The type of axis. Either x or y.

scale

The name of the scale backing the axis component. Defaults to the scale type - you will need to specify if you want (e.g.) a scale for a secondary y-axis.

orient

The orientation of the axis. One of top, bottom, left or right. The orientation can be used to further specialize the axis type (e.g., a y axis oriented for the right edge of the chart) - defaults to bottom for x axes, and left for y axes.

title

A title for the axis. By default, it uses the name of the field in the first data set used by the scale. Use "" to suppress the title.

title_offset

The offset (in pixels) from the axis at which to place the title.

format

The formatting pattern for axis labels. Vega uses D3's format pattern.

ticks

A desired number of ticks. The resulting number may be different so that values are "nice" (multiples of 2, 5, 10) and lie within the underlying scale's range.

values

Explicitly set the visible axis tick values.

subdivide

If provided, sets the number of minor ticks between major ticks (the value 9 results in decimal subdivision).

tick_padding

The padding, in pixels, between ticks and text labels.

tick_size_major, tick_size_minor, tick_size_end

The size, in pixels, of major, minor and end ticks.

offset

The offset, in pixels, by which to displace the axis from the edge of the enclosing group or data rectangle.

layer

A string indicating if the axis (and any gridlines) should be placed above or below the data marks. One of "front" or "back" (default).

grid

A flag indicating if gridlines should be created in addition to ticks.

properties

Optional mark property definitions for custom axis styling. Should be an object created by axis_props, with properties for ticks, majorTicks, minorTicks, grid, labels, title, and axis.

Details

More information about axes can be found in the "axes and legends" vignettes.

Compared to ggplot2

In ggplot2, axis (and legend) properties are part of the scales specification. In vega, they are separate, which allows the specification of multiple axes, and more flexible linkage between scales and axes.

See Also

Vega axis documentation: https://vega.github.io/vega/docs/axes/

Examples

mtcars %>% ggvis(x = ~wt, y = ~mpg, fill = ~cyl) %>%
  layer_points() %>%
  add_axis("x", title = "Weight", orient = "top")

# Suppress axis with hide_axis
mtcars %>% ggvis(x = ~wt, y = ~mpg, fill = ~cyl) %>%
  layer_points() %>%
  hide_axis("x") %>% hide_axis("y")

mtcars %>% ggvis(x = ~wt, y = ~mpg) %>% layer_points() %>%
  add_axis("x", title = "Weight", ticks = 40,
    properties = axis_props(
      ticks = list(stroke = "red"),
      majorTicks = list(strokeWidth = 2),
      grid = list(stroke = "red"),
      labels = list(
        fill = "steelblue",
        angle = 50,
        fontSize = 14,
        align = "left",
        baseline = "middle",
        dx = 3
      ),
      title = list(fontSize = 16),
      axis = list(stroke = "#333", strokeWidth = 1.5)
    )
  )

ggvis documentation built on May 29, 2024, 1:12 a.m.