我想獲得兩個文本字段顯示基於反應用戶定義的ID。但是,我目前沒有顯示所需字段的任何文本。我認爲這與25個具有相同ID_no的數據點有關(我正在使用數據進行繪圖,但因爲它與我的問題無關,所以我刪除了該圖)。但是,在故障排除中刪除數據後,仍然沒有顯示文本。我很確定我的錯誤在代碼的第51行和第52行,但我不確定如何糾正它。任何疑難解答幫助表示讚賞。閃亮的應用程序中的活動文本
#Check packages to use in library
{
library('shiny') #allows for the shiny app to be used
library('magrittr')
}
#Data
ID_no <- 123
Data_val <- sample(0:100, 25)
employee_name <- as.character("Employee1")
date <- Sys.Date()
ID_1 <-data.frame(ID_no, Data_val, employee_name, date)
ID_no <- 456
Data_val <- sample(0:100, 25)
employee_name <- as.character("Employee2")
date <- Sys.Date()-10
ID_2 <-data.frame(ID_no, Data_val, employee_name, date)
data <-rbind(ID_1, ID_2)
IDchoices <- as.character(unique(data$ID_no))
# UI
ui <- fluidPage(
fluidRow(
column(4,
wellPanel(
selectInput(inputId = "ID", label="Select ID:", choices = IDchoices, selected = "1", multiple = FALSE, selectize = TRUE)
),
wellPanel(span(h5(strong("Employee:")), h5(textOutput("Staff_name"))),
span(h5(strong("Date:")),h5(textOutput("Date"))))
)
)
)
#SERVER
server <- function(input, output, session)
{
filteredData <- reactive({
m <- data %>% filter(
ID_no %in% input$ID
)
m
})
output$Staff_name <- renderText({ filteredData()$employee_name })
output$Date <- renderText({ filteredData()$date })
}
#Run the Shiny App to Display Webpage
shinyApp(ui=ui, server=server)
是否使用'統計:: filter'或'dplyr :: filter'在服務器端的反應部分?如果你使用'stats :: filter',你得到類「mts」的一個對象,然後使用...()來進行子集化。$ Date不起作用。如果您使用'dplyr :: filter'獲取子集,則應該將'renderText({filteredData()$ Date})'更改爲renderText({filteredData()$ date})。 –
在你的數據集中沒有變量叫'日期',但'日期' –
@MichalMajka我的歉意,這個錯字已被糾正,但沒有解決原來的問題。我正在使用過濾器的dplyr軟件包。 – User247365