Package 'ggbreak'

Title: Set Axis Break for 'ggplot2'
Description: An implementation of scale functions for setting axis breaks of a 'gg' plot.
Authors: Guangchuang Yu [aut, cre, cph] , Shuangbin Xu [aut]
Maintainer: Guangchuang Yu <[email protected]>
License: Artistic-2.0
Version: 0.1.2
Built: 2024-11-01 04:24:48 UTC
Source: https://github.com/yulab-smu/ggbreak

Help Index


scale-wrap

Description

This scale function wraps a 'gg' plot over multiple rows to make plots with long x axes easier to read.

Usage

scale_wrap(n)

Arguments

n

the number of subplot pieces.

Value

gg object

Examples

library(ggplot2)
library(ggbreak)
p <- ggplot(economics, aes(x=date, y = unemploy, colour = uempmed)) +
     geom_line()
p + scale_wrap(n=4)

scale_x_break

Description

Set an axis break point for a 'gg' plot

Usage

scale_x_break(
  breaks,
  scales = "fixed",
  ticklabels = NULL,
  expand = TRUE,
  space = 0.1
)

scale_y_break(
  breaks,
  scales = "fixed",
  ticklabels = NULL,
  expand = TRUE,
  space = 0.1
)

Arguments

breaks

break point

scales

relative width or height of subplots, default is "fixed". If scale is 'free', all subplots have equal width or height. It also can be any number to set relative width or height compare to first subplot.

ticklabels

the axis labels to subplot, default is NULL.

expand

default is TRUE, logical or a vector of range expansion constants used to add some padding around the data to ensure that they are placed some distance away from the axes. Use the convenience function expansion() of ggplot2 to generate the values for the expand argument. The defaults are to expand the scale by 5% on each side for continuous variables. If it is logical, the TRUE means the default of ggplot2 (foregoing statement), and FALSE means no expand for the plot.

space

the blank space among the subplots after break, default is 0.1 (cm).

Details

This scale function set an axis break point for a 'gg' plot. Either 'x' and 'y' axes are supported. The result is still a 'gg' object and user can progressively add layers to it.

Value

gg object

Author(s)

Guangchuang Yu

Examples

require(ggplot2 )
set.seed(2019-01-19)
d <- data.frame(
  x = 1:20,
  y = c(rnorm(5) + 4, rnorm(5) + 20, rnorm(5) + 5, rnorm(5) + 22)
)

p <- ggplot(d, aes(x, y)) + geom_col()
x <- p+scale_y_break(c(7, 17 ) )
print(x)

scale_x_cut

Description

scale_x_cut

scale_y_cut

Usage

scale_x_cut(breaks, which = NULL, scales = NULL, expand = FALSE, space = 0.1)

scale_y_cut(breaks, which = NULL, scales = NULL, expand = FALSE, space = 0.1)

Arguments

breaks

a numeric or numeric vector, the points to be divided

which

integer, the position of subplots to scales, started from left to right or top to bottom.

scales

numeric, relative width or height of subplots.

expand

default is FALSE, logical a vector of range expansion constants used to add some padding around the data to ensure that they are placed some distance away from the axes. Use the convenience function expansion() of ggplot2 to generate the values for the expand argument. The defaults are to expand the scale by 5% on each side for continuous variables. If it is logical, the TRUE means the default of ggplot2 (foregoing statement), and FALSE means no expand for the plot.

space

the blank space among the subplots after cut, default is 0.1 (cm).

Value

gg object

Examples

library(ggplot2)
library(ggbreak)
set.seed(2019-01-19)
d <- data.frame(
     x = 1:20,
     y = c(rnorm(5) + 4, rnorm(5) + 20, rnorm(5) + 5, rnorm(5) + 22)
 )
p <- ggplot(d, aes(x, y)) + geom_col()
p + scale_y_cut(breaks=c(7, 18), which=c(1, 3), scales=c(3, 0.5))