У меня есть две таблицы, содержащие разные наборы данных. Я хочу, чтобы таблицы отображались на отдельных вкладках. Мой код отлично работает, когда я показываю только одну таблицу, но всякий раз, когда я пытаюсь отобразить оба значения таблиц, больше не отображаются, просто разные заголовки. Буду признателен за любую оказанную помощь. Ниже мой код. Я использую базу данных Lahman и пакет DT.Таблицы отображения на вкладках
server.R:
library(shiny)
library(ggplot2)
# Define a server for the Shiny app
shinyServer(function(input, output) {
# Filter data based on selections
output$table <- DT::renderDataTable(DT::datatable({
data <- Pitching
if (input$yearID != "All") {
data <- data[data$yearID == input$yearID,]
}
if (input$lgID != "All") {
data <- data[data$lgID == input$lgID,]
}
if (input$teamID != "All") {
data <- data[data$teamID == input$teamID,]
}
data
}))
output$table2 <- DT::renderDataTable(DT::datatable({
data <- Batting
if (input$yearID != "All") {
data <- data[data$yearID == input$yearID,]
}
if (input$lgID != "All") {
data <- data[data$lgID == input$lgID,]
}
if (input$teamID != "All") {
data <- data[data$teamID == input$teamID,]
}
data
}))
})
ui.R:
library(shiny)
# Load the ggplot2 package which provides
# the 'mpg' dataset.
library(ggplot2)
# Define the overall UI
shinyUI(
fluidPage(
titlePanel("Pitching"),
# Create a new Row in the UI for selectInputs
fluidRow(
column(4,
selectInput("yearID",
"Year:",
c("All",
unique(as.integer(Pitching$yearID))))
),
column(4,
selectInput("lgID",
"League:",
c("All",
unique(as.character(Pitching$lgID))))
),
column(4,
selectInput("teamID",
"Team:",
c("All",
unique(as.character(Pitching$teamID)))))
),
# Create a new row for the table.
fluidRow(
DT::dataTableOutput("table")
),
fluidPage(
titlePanel("Batting"),
# Create a new Row in the UI for selectInputs
fluidRow(
column(4,
selectInput("yearID",
"Year:",
c("All",
unique(as.integer(Batting$yearID))))
),
column(4,
selectInput("lgID",
"League:",
c("All",
unique(as.character(Batting$lgID))))
),
column(4,
selectInput("teamID",
"Team:",
c("All",
unique(as.character(Batting$teamID)))))
),
# Create a new row for the table.
fluidRow(
DT::dataTableOutput("table2")
),
mainPanel(
tabsetPanel(type = "tabs",
tabPanel("Pitching",tableOutput("table")),
tabPanel("Batting", tableOutput("table2"))
)
)
)
))