Nothing
# note: test-ggplot-lines.R has some tests for date dynamicTicks
test_that("Discrete axis maps to categorical type", {
g <- ggplot(mpg, aes(class, color = class)) + geom_bar()
p <- ggplotly(g, dynamicTicks = "x")
classes <- getLevels(mpg[["class"]])
axisActual <- with(
p$x$layout$xaxis, list(type, tickmode, categoryorder, categoryarray)
)
axisExpect <- list("category", "auto", "array", classes)
expect_equivalent(axisActual, axisExpect)
# trace data reflects the "domain" values
expect_equivalent(
sort(sapply(p$x$data, "[[", "x")), classes
)
# y-axis is left as expected
axisActual <- with(
p$x$layout$yaxis, list(type, tickmode)
)
axisExpect <- list("linear", "array")
expect_equivalent(axisActual, axisExpect)
})
test_that("Categorical axis reflects custom scale mapping", {
lims <- c("2seater", "suv")
g <- ggplot(mpg, aes(class, color = class)) +
geom_bar() +
scale_x_discrete(limits = lims)
expect_warning(p <- ggplotly(g, dynamicTicks = "x"),
regexp = "non-finite")
axisActual <- with(
p$x$layout$xaxis, list(type, tickmode, categoryorder, categoryarray)
)
axisExpect <- list("category", "auto", "array", lims)
expect_equivalent(axisActual, axisExpect)
expect_equivalent(
sort(sapply(p$x$data, "[[", "x")), sort(lims)
)
labs <- c("small", "large")
g <- ggplot(mpg, aes(class, color = class)) +
geom_bar() +
scale_x_discrete(limits = lims, labels = labs)
expect_warning(p <- ggplotly(g, dynamicTicks = "x"),
regexp = "non-finite")
axisActual <- with(
p$x$layout$xaxis, list(type, tickmode, categoryorder, categoryarray)
)
axisExpect <- list("category", "auto", "array", labs)
expect_equivalent(axisActual, axisExpect)
expect_equivalent(
sort(sapply(p$x$data, "[[", "x")), sort(labs)
)
})
test_that("Time axis inverse transforms correctly", {
d <- data.frame(
x = seq(Sys.Date(), Sys.Date() + 9, length.out = 10),
y = rnorm(10)
)
l <- ggplotly(ggplot(d, aes(x, y)) + geom_line(), dynamicTicks = TRUE)$x
expect_length(l$data, 1)
expect_equivalent(l$layout$xaxis$type, "date")
expect_equivalent(l$layout$xaxis$tickmode, "auto")
expect_is(l$layout$xaxis$range, "Date")
expect_equivalent(l$data[[1]][["x"]], d$x)
d2 <- data.frame(
x = seq(Sys.time(), Sys.time() + 9000, length.out = 10),
y = rnorm(10)
)
l2 <- ggplotly(ggplot(d2, aes(x, y)) + geom_line(), dynamicTicks = TRUE)$x
expect_length(l2$data, 1)
expect_equivalent(l2$layout$xaxis$type, "date")
expect_equivalent(l2$layout$xaxis$tickmode, "auto")
expect_is(l2$layout$xaxis$range, "POSIXt")
expect_equivalent(l2$data[[1]][["x"]], d2$x)
})
test_that("Inverse maps colorbar data", {
p <- ggplot(mpg, aes(hwy, manufacturer)) +
stat_bin2d(aes(fill = after_stat(density)), binwidth = c(3,1))
l <- ggplotly(p, dynamicTicks = TRUE)$x
expect_length(l$data, 2)
expect_true(l$data[[2]]$y %in% unique(mpg$manufacturer))
})
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.