library(shiny)library(ggplot2)
data <- data.frame(replicate(2, rnorm(100)))
ui = fluidPage( plotOutput("plot", dblclick = "plot_dblclick") )
server = function(input,output){ output$plot <- renderPlot({ if(!is.null(input$plot_dblclick)) { xcut <- input$plot_dblclick$x ycut <- input$plot_dblclick$y } else { xcut <- mean(data$X1) ycut <- mean(data$X2) } ggplot(data, aes(x = X1, y = X2)) + geom_point() + geom_vline(xintercept = xcut) + geom_hline(yintercept = ycut) })}
shinyApp(ui=ui,server=server)library(shiny)
library(ggplot2)
data <- data.frame(replicate(2, rnorm(100)))
ui = fluidPage(
plotOutput("plot", dblclick = "plot_dblclick")
)
server = function(input,output){
values<- reactiveValues(
xcut=mean(data$X1),
ycut=mean(data$X2)
)
observeEvent(input$plot_dblclick, {
values$xcut <- input$plot_dblclick$x
values$ycut <- input$plot_dblclick$y
})
output$plot <- renderPlot({
ggplot(data, aes(x = X1, y = X2)) + geom_point() +
geom_vline(xintercept = values$xcut) +
geom_hline(yintercept = values$ycut)
})
}
shinyApp(ui=ui,server=server) observeEvent(input$data, {
values$xcut <- mean(data$X1)
values$ycut <- mean(data$X2)
})