Learn R Programming

ggvis (version 0.4.1)

add_axis: 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: https://github.com/mbostock/d3/wiki/Formatting
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.

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.

Details

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

See Also

Vega axis documentation: https://github.com/trifacta/vega/wiki/Axes

Examples

Run this code
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)
    )
  )

Run the code above in your browser using DataLab