Learn R Programming

ggvis (version 0.4.1)

dplyr-ggvis: 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

groups.ggvis(x)

group_by_.ggvis(.data, ..., .dots, add = FALSE)

ungroup.ggvis(x)

summarise_.ggvis(.data, ..., .dots)

mutate_.ggvis(.data, ..., .dots)

arrange_.ggvis(.data, ..., .dots)

select_.ggvis(.data, ..., .dots)

filter_.ggvis(.data, ..., .dots)

distinct_.ggvis(.data, ..., .dots)

slice_.ggvis(.data, ..., .dots)

rename_.ggvis(.data, ..., .dots)

transmute_.ggvis(.data, ..., .dots)

groups.reactive(x)

ungroup.reactive(x)

group_by_.reactive(.data, ..., .dots, add = FALSE)

summarise_.reactive(.data, ..., .dots)

mutate_.reactive(.data, ..., .dots)

arrange_.reactive(.data, ..., .dots)

select_.reactive(.data, ..., .dots)

filter_.reactive(.data, ..., .dots)

distinct_.reactive(.data, ..., .dots)

slice_.reactive(.data, ..., .dots)

rename_.reactive(.data, ..., .dots)

transmute_.reactive(.data, ..., .dots)

Arguments

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

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

# 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()

Run the code above in your browser using DataLab