Я работаю над блестящим приложением, которое позволит вам выбирать поля, показывать вам коробочный график и связанные с ним данные, а затем чистить экстремальные значения, чтобы получить информацию о них. У меня проблема в том, что мое приложение работает нормально, если я выбрал все виды в радужной оболочке, но если у меня их нет, то ни чистка, ни щелчки не работают. Сами квадратики обновляются соответствующим образом, похоже, однако, что система координат, используемая для входных данных, не пересчитывается должным образом. Например, если вы выбираете лишние цвета и вирджинику, а затем попытаетесь очистить выделение в вирджинике, вы получите распечатку для точек разноцветного цвета.
library(shiny)
library(shinyWidgets)
library(tidyverse)
library(ggthemes)
library(DT)
library(scales)
# Define UI for application that draws a histogram
ui <- fluidPage(
# Application title
titlePanel("The Ol' Testerooski"),
mainPanel(
plotOutput("testplot", click = "plot_click", brush = "plot_brush"),
verbatimTextOutput("info"),
DTOutput("testtable")
),#mainPanel
fluidRow(
column(4,
pickerInput("x", "Species",
c("setosa", "versicolor", "virginica"),
multiple = T,
selected = "virginica"))
)#fluidRow
)#fluidPage
# Define server logic required to draw a histogram
server <- function(input, output) {
filtered_input <- reactive({iris %>% filter(Species %in% input$x)})
D <- reactive({brushedPoints(filtered_input(),brush = input$plot_brush, allRows = T)})
output$testtable <- renderDT({
if(!is.null(input$plot_click)){
nearPoints(filtered_input(), input$plot_click, threshold = 10)
} else {
filtered_input()}
}
)
output$testplot <- renderPlot({
ggplot(filtered_input(), aes(x = Species, y = Sepal.Length, color = Species)) +
geom_boxplot() + theme_fivethirtyeight() +
scale_y_continuous(labels = comma) + coord_cartesian()
})
output$info <- renderPrint({D() %>% filter(selected_ == T)})
}
# Run the application
shinyApp(ui = ui, server = server)