Nothing
acontext("ChromHMMinit data set")
require(httr)
ChromHMMinit.RData <- file.path(tempdir(), "ChromHMMinit.RData")
request <- GET("http://github.com/tdhock/animint-examples/blob/master/data/ChromHMMinit.RData?raw=true")
stop_for_status(request)
writeBin(content(request), ChromHMMinit.RData)
## If we don't load this data set into the global environment, then we
## get Error in eval(expr, envir, enclos) (from helper-functions.R#5)
## : object 'ChromHMMinit' not found
load(ChromHMMinit.RData, .GlobalEnv)
last.iteration <- subset(ChromHMMinit$metrics, iteration==100)
viz <- list(
parameters=ggplot()+
ggtitle("parameters at selected iteration")+
scale_fill_gradient(low="white", high="blue")+
geom_tile(aes(state, experiment, fill=frequency,
key=paste(state, experiment)),
showSelected=c("repeat.fac", "iteration"),
##chunk_vars=c("repeat.fac"),
data=data.frame(ChromHMMinit$emission, parameters="emission"))+
scale_color_gradient(low="white", high="red")+
theme_bw()+
theme_animint(height=500, width=400)+
theme(panel.margin=grid::unit(0, "cm"))+
facet_grid(parameters ~ .,
space="free",
scales="free_y")+
scale_y_discrete(drop=FALSE)+
geom_point(aes(state.to, state.from, color=probability,
key=paste(state.from, state.to)),
showSelected=c("repeat.fac", "iteration"),
size=8,
##chunk_vars=c("repeat.fac"),
data=data.frame(ChromHMMinit$transition,
parameters="transition")),
metrics=ggplot()+
ggtitle("convergence metrics, select iteration")+
make_tallrect(ChromHMMinit$metrics, "iteration")+
geom_line(aes(iteration, metric.value,
group=repeat.fac),
clickSelects="repeat.fac",
size=3,
alpha=0.6,
data=subset(ChromHMMinit$metrics, metric.name != "Change"))+
theme_bw()+
theme_animint(height=500)+
theme(panel.margin=grid::unit(0, "cm"))+
facet_grid(metric.name ~ ., scales="free_y"),
last=ggplot()+
ggtitle("last iteration, select initialization")+
theme_bw()+
theme_animint(height=500, width=400)+
theme(panel.margin=grid::unit(0, "cm"))+
facet_grid(metric.name ~ ., space="fixed", scales="free")+
geom_point(aes(repeat.fac, metric.value),
clickSelects="repeat.fac",
size=5,
data=subset(last.iteration, metric.name != "Change"))+
scale_x_discrete("random initialization")+
scale_y_continuous(""),
duration=list(iteration=500),
first=list(iteration=100),
time=list(variable="iteration", ms=500),
title="10 ChromHMM fits for 6 experiments on one iPS sample")
system.time({
info <- animint2HTML(viz) #TODO: why does this take so long?
})
getFill <- function(html=getHTML()){
getStyleValue(html, '//g[@class="geom2_point_parameters"]//circle', "fill")
}
test_that("animation starts by default", {
initial.fill.vec <- getFill()
expect_equal(length(initial.fill.vec), 225)
Sys.sleep(5)
updated.fill.vec <- getFill()
expect_equal(length(updated.fill.vec), 225)
n.different <- sum(initial.fill.vec != updated.fill.vec)
expect_gt(n.different, 0)
})
test_that("default tile colour/stroke is transparent", {
stroke.vec <- getStyleValue(
info$html, '//g[@class="geom1_tile_parameters"]//rect', "stroke")
expect_color(stroke.vec, "black")
})
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.