Nothing
## -----------------------------------------------------------------------------
#| label: setup
#| include: false
r_libs <- Sys.getenv("R_LIBS")
if (nzchar(r_libs)) {
libs <- strsplit(r_libs, .Platform$path.sep, fixed = TRUE)[[1]]
libs <- libs[nzchar(libs)]
.libPaths(c(libs, .libPaths()))
}
library(dplyr)
library(plotbb)
## ----plotbb-aes---------------------------------------------------------------
library(plotbb)
p <- bbplot(mtcars, bb_aes(mpg, disp, col = factor(cyl)))
p + bb_grid(col = "grey50", lty = "dashed") + bb_point(pch = 19)
## ----plotbb-layer-------------------------------------------------------------
#| fig-width: 12
p2 <- p + bb_point() + bb_lm(bb_aes(group = cyl), lwd = 2)
p3 <- p2 + bb_lm(col = "red", lwd = 3, lty = "dotted")
p4 <- p + bb_text(bb_aes(label = cyl), cex = 2)
aplot::plot_list(p2, p3, p4, ncol = 3, tag_levels = "A")
## ----plotbb-line-seg-errorbar-------------------------------------------------
#| fig-width: 12
d2 <- group_by(mtcars, cyl) %>%
summarize(
x = cyl[1],
y = mean(disp),
sd = sd(disp)
)
g1 <- bbplot(d2, bb_aes(x, y)) +
bb_line(col = "grey50") +
bb_point(pch = 19, cex = 1.5) +
bb_errorbar(bb_aes(ymin = y - sd, ymax = y + sd), width = 0.8)
seg <- data.frame(x = 15, y = 150, xend = 30, yend = 450)
g2 <- bbplot(seg, bb_aes(x, y)) +
bb_point(pch = 19) +
bb_segment(bb_aes(xend = xend, yend = yend), lwd = 3, col = "steelblue")
aplot::plot_list(g1, g2, ncol = 2, tag_levels = "A")
## ----plotbb-bar---------------------------------------------------------------
#| fig-width: 8
bbplot(mtcars, bb_aes(cyl, mpg, col = factor(cyl))) +
bb_bar(stat = "count") +
bb_legend(position = "topleft")
## ----plotbb-heatmap-----------------------------------------------------------
#| fig-width: 10
#| fig-height: 10
df <- data.frame(
x = rep(1:10, 12),
y = rep(1:12, each = 10),
values = rnorm(120, mean = 10, sd = 5),
type = sample(LETTERS[1:5], 120, replace = TRUE),
stringsAsFactors = FALSE
)
h1 <- bbplot(df, bb_aes(x, y, col = values)) + bb_tile() +
bb_title("heatmap for continuous numerical values")
h2 <- bbplot(df, bb_aes(x, y, col = values)) + bb_tile() + bb_scale_col_palette("YlOrRd") +
bb_title("applying a color palette")
h3 <- bbplot(df, bb_aes(x, y, col = type)) + bb_tile() +
bb_title("heatmap for discrete categorical values")
h4 <- bbplot(df, bb_aes(x, y, col = values)) + bb_tile() + bb_text(col = "black") +
bb_title("heatmap with text labels") + bb_theme_expand()
aplot::plot_list(h1, h2, h3, h4, ncol = 2, tag_levels = "A")
## ----plotbb-labs--------------------------------------------------------------
p2 + bb_labs(
title = "hello",
sub = "just for demo",
xlab = "this is xlab",
ylab = "this is ylab"
) +
bb_title("hello world")
## ----plotbb-theme-------------------------------------------------------------
#| fig-width: 10
g <- p2 +
bb_theme(
col.main = "red",
cex.main = 2,
mar = c(4, 4, 3, 1)
) +
bb_title("applying graphics::par")
g2 <- p2 + bb_title("theme has no side effect")
aplot::plot_list(g, g2, ncol = 2, tag_levels = "A")
## ----plotbb-theme-expand------------------------------------------------------
#| fig-width: 10
p4 <- p3 + bb_theme_expand()
aplot::plot_list(p4, p3, ncol = 2, tag_levels = "A")
## ----plotbb-theme-grey--------------------------------------------------------
p + bb_grid(col = "grey50", lty = "dashed") +
bb_point(pch = 19) +
bb_theme_expand() +
bb_theme_grey()
## ----plotbb-theme-blue--------------------------------------------------------
p + bb_point(pch = 19, cex = 2) +
bb_theme_expand() +
bb_theme_deepblue()
## ----plotbb-scale-manual------------------------------------------------------
pal <- c(`4` = "#1b9e77", `6` = "#d95f02", `8` = "#7570b3")
bbplot(mtcars, bb_aes(mpg, disp, col = factor(cyl))) +
bb_point(pch = 19) +
bb_scale_col_manual(pal) +
bb_legend()
## ----plotbb-scale-gradient----------------------------------------------------
bbplot(mtcars, bb_aes(mpg, disp, col = hp)) +
bb_point(pch = 19) +
bb_scale_col_gradient(low = "grey80", high = "firebrick") +
bb_legend()
## ----plotbb-legend------------------------------------------------------------
p + bb_point(pch = 19) + bb_legend()
## ----plotbb-facet-------------------------------------------------------------
#| fig-width: 10
p + bb_point(pch = 19) + bb_facet_wrap(~cyl, ncol = 3)
## ----plotbb-facet-free--------------------------------------------------------
#| fig-width: 10
p + bb_point(pch = 19) + bb_facet_wrap(~cyl, ncol = 3, scales = "free_y")
## -----------------------------------------------------------------------------
f <- function() {
plot(mtcars$mpg, mtcars$disp)
abline(lm(disp ~ mpg, data = mtcars), col = "red")
}
## -----------------------------------------------------------------------------
library(dplyr)
d <- group_by(mtcars, cyl) %>%
summarize(xm = mean(mpg), ym = mean(disp))
pp <- as.bbplot(f) +
bb_theme_expand() +
bb_theme_grey() +
bb_lm(bb_aes(mpg, disp, group = cyl, col = factor(cyl)), data = mtcars, lwd = 2, lty = "dashed") +
bb_point(bb_aes(xm, ym, col = factor(cyl)), data = d, pch = 19, cex = 2) +
bb_title("hello plotbb") +
bb_grid(col = "grey30", lty = "dashed")
## ----plotbb-base--------------------------------------------------------------
pp + (~points(30, 400, pch = 19, col = "red", cex = 3)) +
~text(30, 420, label = "hae fun :)", col = "blue", cex = 1.2)
## ----plotbb-ape---------------------------------------------------------------
#| fig-width: 8
#| fig-height: 7
require(ape)
set.seed(2020 - 09 - 10)
x = rtree(10)
p = as.bbplot(
function()
plot(
x,
cex = 2,
edge.width = 2,
edge.color = "white",
tip.color = "purple"
)
)
p + bb_theme_expand() + bb_theme_deepblue() +
(~nodelabels(node = 14, pie = matrix(rep(1, 4), 1), cex = 2)) +
(~nodelabels(node = 15, pie = matrix(rep(1, 3), 1), cex = 2)) +
(~nodelabels(node = 18, pie = matrix(rep(1, 5), 1), cex = 2)) +
bb_labs(title = "phylogenetic tree plotted by base graphics") +
bb_theme(col.main = "firebrick", cex.main = 2)
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.