#' @title Show shiny - notifications
#'
#' @param in.shiny Logical value.
#' @param ui Given to \code{shiny::showNotification()}.
#' @param type Given to \code{shiny::showNotification()}.
#' @param ... More arguments given \code{shiny::showNotification()}.
#'
#' @return A shiny notification.
shiny_fdb <- function(in.shiny, ui, type = "message", ...){
if(base::isTRUE(in.shiny)){
shiny::showNotification(ui = ui, type = type, ...)
}
}
#' @title Plot saving wrapper
plot_and_save <- function(ns){
shiny::tagList(
shiny::fluidRow(
hs(4,shiny::h5(shiny::strong("Plot:")),
shiny::actionButton(inputId = ns("update_plot"), label = "Update")),
hs(4,shiny::h5(shiny::strong("Save:")),
shiny::downloadButton(outputId = ns("save_as_pdf"), label = "PDF"))
)
)
}
#' @title Horizontal Separation (width = 3)
hs <- function(width = 3, ..., offset = 0){
shiny::column(width = width, ..., offset = offset)
}
#' @title Slider inputs
slider_input_alpha <- function(ns, id = "pt.alpha"){
shiny::sliderInput(
inputId = ns(id),
label = "Transparency:",
min = 0.01,
max = 1,
step = 0.01,
value = 0.1
)
}
#' @rdname slider_input_alpha
slider_input_size <- function(ns,
id = "pt.size",
min = 0.1,
max = 5,
step = 0.1,
value = 1.2){
shiny::sliderInput(
inputId = ns("pt.size"),
label = "Size:",
min = min,
max = max,
step = step,
value = value
)
}
#' Title
#'
#' @param n
#'
#' @return
html_breaks <- function(n){
shiny::HTML(text = base::rep("<br>", n) %>% stringr::str_c(collapse = ""))
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.