inst/doc/trelliscopejs.R

## ----global_options, include=FALSE--------------------------------------------
# R output pre blocks are styled by default to indicate output
knitr::opts_chunk$set(comment = NA)

## ---- message=FALSE-----------------------------------------------------------
library(trelliscopejs)
library(ggplot2)
library(gapminder)

str(gapminder)

## ----fig.width=11.8, fig.height=10--------------------------------------------
qplot(year, lifeExp, data = subset(gapminder, continent == "Europe")) +
  facet_wrap(~ country + continent) +
  theme_bw()

## ----fig.width=11.8, fig.height=10--------------------------------------------
qplot(year, lifeExp, data = gapminder) +
  xlim(1948, 2011) + ylim(10, 95) + theme_bw() +
  facet_wrap(~ country + continent)

## ----fig.width=8, fig.align="center"------------------------------------------
qplot(class, cty, data = mpg, geom = c("boxplot", "jitter")) +
  ylim(7, 37) + theme_bw()

## ----message=FALSE------------------------------------------------------------
library(dplyr)
library(tidyr)
library(purrr)
library(gapminder)

by_country <- nest(gapminder, data = !one_of(c("country", "continent")))

by_country

## -----------------------------------------------------------------------------
country_model <- function(df)
  lm(lifeExp ~ year, data = df)

by_country <- by_country %>%
  mutate(model = map(data, country_model))

by_country

## ----warning=FALSE------------------------------------------------------------
library(plotly)
library(trelliscopejs)

country_plot <- function(data, model) {
  plot_ly(data = data, x = ~year, y = ~lifeExp,
    type = "scatter", mode = "markers", name = "data") %>%
    add_trace(data = data, x = ~year, y = ~predict(model),
      mode = "lines", name = "lm") %>%
    layout(
      xaxis = list(range = c(1948, 2011)),
      yaxis = list(range = c(10, 95)),
      showlegend = FALSE)
}

by_country <- by_country %>%
  mutate(data_plot = map2_plot(data, model, country_plot))

by_country

## ----warning=FALSE------------------------------------------------------------
by_country <- by_country %>%
  mutate(resid_mad = cog(
    map_dbl(model, ~ mad(resid(.x))),
    desc = "median absolute deviation of residuals"))

Try the trelliscopejs package in your browser

Any scripts or data that you put into this service are public.

trelliscopejs documentation built on Feb. 1, 2021, 9:05 a.m.