sec_axis {ggplot2} | R Documentation

## Specify a secondary axis

### Description

This function is used in conjunction with a position scale to create a secondary axis, positioned opposite of the primary axis. All secondary axes must be based on a one-to-one transformation of the primary axes.

### Usage

    sec_axis(trans = NULL, name = waiver(), breaks = waiver(),
      labels = waiver())

    dup_axis(trans = ~., name = derive(), breaks = derive(),
      labels = derive())

    derive()

### Arguments

`trans` | A transformation formula
`name` | The name of the secondary axis

`breaks`

One of:

- `NULL` for no breaks

- `waiver()` for the default breaks computed by the transformation object

- A numeric vector of positions

- A function that takes the limits as input and returns breaks as output

`labels`

One of:

- `NULL` for no labels

- `waiver()` for the default labels computed by the transformation object

- A character vector giving labels (must be same length as `breaks`)

- A function that takes the breaks as input and returns labels as output

### Details

`sec_axis` is used to create the specifications for a secondary axis. Except for the `trans` argument any of the arguments can be set to `derive()` which would result in the secondary axis inheriting the settings from the primary axis.

`dup_axis` is provide as a shorthand for creating a secondary axis that is a duplication of the primary axis, effectively mirroring the primary axis.

### Examples

    p <- ggplot(mtcars, aes(cyl, mpg)) +
      geom_point()

    # Create a simple secondary axis
    p + scale_y_continuous(sec.axis = sec_axis(~.+10))

    # Inherit the name from the primary axis
    p + scale_y_continuous("Miles/gallon", sec.axis = sec_axis(~.+10, name = derive()))

    # Duplicate the primary axis
    p + scale_y_continuous(sec.axis = dup_axis())

    # You can pass in a formula as a shorthand
    p + scale_y_continuous(sec.axis = ~.^2)

[Package ggplot2 version 2.2.1 Index]