dplyr-ggvis: Dplyr verbs for ggvis.

dplyr-ggvisR Documentation

Dplyr verbs for ggvis.

Description

Applying a dplyr verb to a ggvis object creates a reactive transformation: whenever the underlying data changes the transformation will be recomputed.

Usage

## S3 method for class 'ggvis'
groups(x)

## S3 method for class 'ggvis'
group_by(.data, ..., .add = FALSE)

## S3 method for class 'ggvis'
ungroup(x, ...)

## S3 method for class 'ggvis'
summarise(.data, ...)

## S3 method for class 'ggvis'
mutate(.data, ...)

## S3 method for class 'ggvis'
arrange(.data, ...)

## S3 method for class 'ggvis'
select(.data, ...)

filter.ggvis(.data, ...)

## S3 method for class 'ggvis'
distinct(.data, ...)

## S3 method for class 'ggvis'
slice(.data, ...)

## S3 method for class 'ggvis'
rename(.data, ...)

## S3 method for class 'ggvis'
transmute(.data, ...)

## S3 method for class 'reactive'
groups(x)

## S3 method for class 'reactive'
ungroup(x, ...)

## S3 method for class 'reactive'
group_by(.data, ..., add = FALSE)

## S3 method for class 'reactive'
summarise(.data, ...)

## S3 method for class 'reactive'
mutate(.data, ...)

## S3 method for class 'reactive'
arrange(.data, ...)

## S3 method for class 'reactive'
select(.data, ...)

filter.reactive(.data, ...)

## S3 method for class 'reactive'
distinct(.data, ...)

## S3 method for class 'reactive'
slice(.data, ...)

## S3 method for class 'reactive'
rename(.data, ...)

## S3 method for class 'reactive'
transmute(.data, ...)

Non-standard evaluation

Both dplyr and shiny do non-standard evaluation, so to help each package figure out when it should evaluate its code, reactive components in these functions must be wrapped in eval().

Examples

library(dplyr)
base <- mtcars %>% ggvis(~mpg, ~cyl) %>% layer_points()
base %>% group_by(cyl) %>% summarise(mpg = mean(mpg)) %>%
  layer_points(fill := "red", size := 100)

base %>% filter(mpg > 25) %>% layer_points(fill := "red")

base %>% mutate(cyl = jitter(cyl)) %>% layer_points(fill := "red")

## Not run: 
# Dynamically restrict range using filter
mtcars %>% ggvis(~disp, ~mpg) %>%
   filter(cyl > eval(input_slider(0, 10))) %>%
   layer_points()

# Dynamically compute box-cox transformation with mutate
bc <- function(x, lambda) {
  if (abs(lambda) < 1e-6) log(x) else (x ^ lambda - 1) / lambda
}
bc_slider <- input_slider(-2, 2, 1, step = 0.1)
mtcars %>%
 ggvis(~disp, ~mpg) %>%
 mutate(disp = bc(disp, eval(bc_slider))) %>%
 layer_points()

## End(Not run)

rstudio/ggvis documentation built on Feb. 5, 2024, 9:13 p.m.