Nothing
context("geom_plot")
library(tibble)
test_that("data.frame", {
my.df <- data.frame(x = 1:10, y = 1:10, tb = letters[1:10])
expect_error(print(ggplot(my.df, aes(x, y, label = tb)) +
geom_plot()))
})
test_that("multiple_ggplot", {
p1 <- ggplot(mpg, aes(displ, cty)) + geom_point()
p2 <- ggplot(mpg, aes(displ, hwy)) + geom_point()
p3 <- ggplot(mpg, aes(cyl, displ)) + geom_point()
my.tb <- tibble(x = 0:2, y = 0:2, tb = list(p1, p2, p3))
# skip("false positive triggered")
vdiffr::expect_doppelganger("geom_plot_three_plots",
ggplot() +
geom_plot(data = my.tb,
mapping = aes(x, y, label = tb)) +
lims(x = c(0, 2), y = c(0, 2)))
# skip("false positive triggered")
vdiffr::expect_doppelganger("geom_plot_three_angles",
ggplot() +
geom_plot(data = my.tb,
mapping = aes(x, y, label = tb),
angle = 90, vjust = c(1, 0.5, 0)) +
lims(x = c(0, 2), y = c(0, 2)))
# expect_warning(print(ggplot() +
# geom_plot(data = my.tb[2, ],
# mapping = aes(x, y, label = tb),
# angle = 45) +
# lims(x = c(0, 2), y = c(0, 2))))
})
test_that("examples_geom_plot", {
p <-
ggplot(data = mtcars, mapping = aes(wt, mpg)) +
geom_point()
df <- tibble(x = 0.01, y = 0.01,
plot = list(p +
coord_cartesian(xlim = c(3, 4),
ylim = c(13, 16)) +
labs(x = NULL, y = NULL)))
# skip("false positive triggered")
vdiffr::expect_doppelganger("geom_plot_npc_1",
p +
expand_limits(x = 0, y = 0) +
geom_plot_npc(data = df,
aes(npcx = x, npcy = y, label = plot))
)
# skip("false positive triggered")
vdiffr::expect_doppelganger("geom_plot_npc_2",
p +
expand_limits(x = 0, y = 0) +
geom_plot_npc(data = df,
aes(npcx = x, npcy = y, label = plot),
angle = 90, vjust = 1)
)
})
test_that("nudge_x_geom_plot", {
p1 <- ggplot(mpg, aes(displ, cty)) + geom_point()
p2 <- ggplot(mpg, aes(displ, hwy)) + geom_point()
p3 <- ggplot(mpg, aes(cyl, displ)) + geom_point()
my.tb <- tibble(x = 0:2, y = 0:2, tb = list(p1, p2, p3))
p <- ggplot() +
geom_plot(data = my.tb, mapping = aes(x, y, label = tb), nudge_x = 0.1) +
lims(x = c(0, 2), y = c(0, 2))
result <- layer_data(p)[, c("x_orig", "y_orig")]
expected <- data.frame(
x_orig = c(0, 1, 2),
y_orig = c(0, 1, 2)
)
expect_identical(result, expected)
})
test_that("nudge_x_and_position_geom_plot_fails", {
p1 <- ggplot(mpg, aes(displ, cty)) + geom_point()
p2 <- ggplot(mpg, aes(displ, hwy)) + geom_point()
p3 <- ggplot(mpg, aes(cyl, displ)) + geom_point()
my.tb <- tibble(x = 0:2, y = 0:2, tb = list(p1, p2, p3))
expect_error(
ggplot() +
geom_plot(data = my.tb, mapping = aes(x, y, label = tb), nudge_x = 0.1, position = position_nudge_keep) +
lims(x = c(0, 2), y = c(0, 2)),
"You must specify either `position` or `nudge_x`/`nudge_y`."
)
})
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.