1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
|
context("Facetting")
df <- data.frame(x = 1:3, y = 3:1, z = letters[1:3])
test_that("facets split up the data", {
l1 <- ggplot(df, aes(x, y)) + geom_point() + facet_wrap(~ z)
d1 <- pdata(l1)[[1]]
expect_that(d1$PANEL, equals(factor(1:3)))
l2 <- ggplot(df, aes(x, y)) + geom_point() + facet_grid(. ~ z)
l3 <- ggplot(df, aes(x, y)) + geom_point() + facet_grid(z ~ .)
d2 <- pdata(l2)[[1]]
d3 <- pdata(l3)[[1]]
expect_that(d2, equals(d3))
expect_that(sort(names(d2)), equals(sort(c("x", "y", "group", "PANEL"))))
expect_that(d2$PANEL, equals(factor(1:3)))
})
test_that("facets with free scales scale independently", {
l1 <- ggplot(df, aes(x, y)) + geom_point() +
facet_wrap(~ z, scales = "free")
d1 <- cdata(l1)[[1]]
expect_that(length(unique(d1$x)), equals(1))
expect_that(length(unique(d1$y)), equals(1))
l2 <- ggplot(df, aes(x, y)) + geom_point() +
facet_grid(. ~ z, scales = "free")
d2 <- cdata(l2)[[1]]
expect_that(length(unique(d2$x)), equals(1))
expect_that(length(unique(d2$y)), equals(3))
l3 <- ggplot(df, aes(x, y)) + geom_point() +
facet_grid(z ~ ., scales = "free")
d3 <- cdata(l3)[[1]]
expect_that(length(unique(d3$x)), equals(3))
expect_that(length(unique(d3$y)), equals(1))
})
test_that("shrink parameter affects scaling", {
l1 <- ggplot(df, aes(1, y)) + geom_point()
r1 <- pranges(l1)
expect_that(r1$x[[1]], equals(c(1, 1)))
expect_that(r1$y[[1]], equals(c(1, 3)))
l2 <- ggplot(df, aes(1, y)) + stat_summary(fun.y = "mean")
r2 <- pranges(l2)
expect_that(r2$y[[1]], equals(c(2, 2)))
l3 <- ggplot(df, aes(1, y)) + stat_summary(fun.y = "mean") +
facet_null(shrink = FALSE)
r3 <- pranges(l3)
expect_that(r3$y[[1]], equals(c(1, 3)))
})
|