Zoom Out Shiny App at Default in Browser

Zoom out shiny app at default in browser

Using this SO answer: https://stackoverflow.com/a/21668647/4564432

library(shiny)

# Define UI for application that draws a histogram
ui <- shinyUI(fluidPage(
tags$style("
body {
-moz-transform: scale(0.8, 0.8); /* Moz-browsers */
zoom: 0.8; /* Other non-webkit browsers */
zoom: 80%; /* Webkit browsers */
}
"),
# Application title
titlePanel("Old Faithful Geyser Data"),

# Sidebar with a slider input for number of bins
sidebarLayout(
sidebarPanel(
sliderInput("bins",
"Number of bins:",
min = 1,
max = 50,
value = 30)
),

# Show a plot of the generated distribution
mainPanel(
plotOutput("distPlot")
)
)
))

# Define server logic required to draw a histogram
server <- shinyServer(function(input, output) {

output$distPlot <- renderPlot({
# generate bins based on input$bins from ui.R
x <- faithful[, 2]
bins <- seq(min(x), max(x), length.out = input$bins + 1)

# draw the histogram with the specified number of bins
hist(x, breaks = bins, col = 'darkgray', border = 'white')
})
})

# Run the application
shinyApp(ui = ui, server = server)

How to have shiny app save gt ouput as an .RFT file on the users browser?

downloadHandler() was the solution

library(data.table)
library(shiny)
library(gt)
library(shinyscreenshot)

data <- datasets::mtcars
setDT(data, keep.rownames = TRUE)[]

ui <- navbarPage("Save this to RTF",
tabPanel("Table", icon = icon("table"),

sidebarLayout(
sidebarPanel(
selectInput("input",
label = "Choose # of cyl",
choices = c("All", data$cyl)),
screenshotButton(selector="#table", label = 'Download Png', filename = 'screenshot'),
downloadButton('downloadData', 'Download RTF')
),

mainPanel(
gt_output("table")
)
)
)
)

server <- function(input, output, session) {

reactive_tab <- reactive({
d <- data
if(input$input != "All")
d <- subset(d, cyl == input$input)
d
})

output$table <- render_gt(
reactive_tab() %>% gt()
)


output$downloadData <- downloadHandler(
filename = paste0("gttable-",Sys.Date(),".rtf"),
content = function(file){
gtsave(reactive_tab() %>% gt(),
file)
}
)

# observeEvent(input$downloadData,{
# gtsave(reactive_tab() %>% gt(),
# paste0(Sys.Date(),".rtf"))
# })
#

}
shinyApp(ui, server)



Related Topics



Leave a reply



Submit