plot_permutation <- function(x, coloring){
#prepare data
perm.data <- x$perm.data
dataset <- x$tendril$data
data <- dataset[dataset$Terms == unique(perm.data$Terms),]
#get data from actual and permutations and bind together
actualdata <- createDataset(data$x, data$y, "Actual", "Actual", data$StartDay, perm.data)
actualdata$color<-data[[coloring]]
plotdata <- createDataset(perm.data$x, perm.data$y, perm.data$label, perm.data$type, perm.data$StartDay, perm.data)
plotdata$color<-NA
plotdata<- rbind(actualdata, plotdata)
if (coloring %in% LOG_COLORING_OPTIONS) {
plotdata$color<-pmax(log10(plotdata$color), -3)
}
palette <- tendril_palette()
#plot parameters
Title <- paste(unique(perm.data$Terms), ", from day: ", unique(plotdata$perm.from.day), sep = "")
data2.labels <- data.frame(
xpos = c(Inf, -Inf),
ypos = c(Inf, Inf),
label = x$tendril$Treatments,
hjust = c(1,0),
vjust = c(1,1)
)
y<-NULL
label<-NULL
type<-NULL
aes <- ggplot2::aes
element_blank <- ggplot2::element_blank
p<-ggplot2::ggplot(data=plotdata[plotdata$type=="Permutation", ], aes(x=x, y=y, group=label), aspect="iso")
if (coloring %in% LOG_COLORING_OPTIONS) {
p <- p +
ggplot2::scale_colour_gradientn("log(p-val)",
colours=palette$grpalette,
values = palette$values,
limits = palette$limits
)
} else if (coloring != "Terms") {
p <- p + ggplot2::scale_colour_gradient(coloring)
}
p <- p + ggplot2::geom_path(color = "Grey80")
if (coloring!="Terms") {
p <- p +
ggplot2::geom_path(data=plotdata[plotdata$type=="Actual", ], aes(x=x, y=y, group=label, color = color))+
ggplot2::geom_point(data=plotdata[plotdata$type=="Actual", ], aes(x=x, y=y, group=label, color = color), size=2)
} else {
p <- p +
ggplot2::geom_path(data=plotdata[plotdata$type=="Actual", ], aes(x=x, y=y, group=label), color = "blue")+
ggplot2::geom_point(data=plotdata[plotdata$type=="Actual", ], aes(x=x, y=y, group=label), color = "blue", size=2)
}
p <- p +
ggplot2::theme_bw() +
ggplot2::theme(axis.title.x = element_blank(),
axis.text.x = element_blank(),
axis.ticks.x = element_blank(),
axis.title.y = element_blank(),
axis.text.y = element_blank(),
axis.ticks.y = element_blank()) +
ggplot2::theme(panel.grid.major = element_blank(), panel.grid.minor = element_blank()) +
ggplot2::labs(color = "Type") +
ggplot2::coord_fixed(ratio=1) +
ggplot2::ggtitle(Title) +
ggplot2::annotate(geom="text", x=data2.labels$xpos, y=data2.labels$ypos,
label = data2.labels$label,
hjust=data2.labels$hjust, vjust=data2.labels$vjust,
colour = "grey40", size = 5, fontface = 2)
return(p)
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.