簡體   English   中英

在 shinydashboard 中創建帶有日期輸入的表

[英]Creating table with date inputs in shinydashboard

我的目標是創建一個儀表板,在其中一個選項卡中包含一個基於用戶日期輸入的表格。 我希望它專門出現在儀表板中名為“概述”的選項卡中。

我有 3 個 r 腳本,一個稱為數據清理,基本上是一個加載到名為trans的數據框中的表。 其他 2 個稱為 ui 和 server。 它們是:

ui.R

library(shiny)
library(shinydashboard)
library(data.table)#For fread.
library(tidyverse)
library(DT)#For the interactive table.



# Header -----------------------------------------------------------------------|
header<-dashboardHeader( title = "Marketing Dashboard"
  
)


# Sidebar ----------------------------------------------------------------------|

sidebar<-dashboardSidebar(
  sidebarMenu(
    menuItem("Overview", tabname ="overview", icon = icon("dashboard")),
    menuItem("Weather", tabname ="weather", icon = icon("bolt"))
  )
)

# Body -------------------------------------------------------------------------|
  
body<-dashboardBody(
  tabItems(
    tabItem(tabName = 'Overview',
      fluidRow(     
        dateRangeInput("date",
          label = 'Date range input',
          start = Sys.Date() - 7, end = Sys.Date()
        ),
        dataTableOutput("overviewtable")
      )
    ),
    tabItem(tabName = 'weather',
      fluidRow(
        
      )
    )
  )
)



# UI ---------------------------------------------------------------------------|

ui = dashboardPage(
  header,
  sidebar,
  body
)

shinyApp(ui,server)


server.R

server <- function(input,output){
  
  #Reactive for dates in overview
  overviewdata<- reactive({
   trans %>% filter(ymd_hms(start_time) >= input$date[1] & ymd_hms(end_time)<= inpute$date[2])
  })
  #Table for overview
  output$overviewtable<- renderDataTable(
    datatable({
      overviewdata
    })
  )
  
  
}

我的問題是當我運行應用程序時,我只看到一個帶有兩個選項卡的空白儀表板。 一個用於概述,一個用於天氣。 我沒有看到任何表格或任何可以讓我選擇輸入日期的地方。 這是我第一次使用 shiny,我正在嘗試學習 go。 這也是我第一次使用多個 r 腳本。 我從 r 庫和堆棧溢出在線查看了其他示例,但我不確定我做錯了什么。

如果您想在選項卡中看到它,您應該將 dateRangeInput 放在 menuItem 中。 這是“概述”選項卡下的樣子。

library(shiny)
library(shinydashboard)
library(data.table)#For fread.
library(tidyverse)
library(DT)#For the interactive table.



# Header -----------------------------------------------------------------------|
header<-dashboardHeader( title = "Marketing Dashboard"
                         
)


# Sidebar ----------------------------------------------------------------------|

sidebar<-dashboardSidebar(
  sidebarMenu(
    menuItem("Overview", tabname ="overview", icon = icon("dashboard"),
             dateRangeInput("date",
                            label = 'Date range input',
                            start = Sys.Date() - 7, end = Sys.Date()
             )),
    menuItem("Weather", tabname ="weather", icon = icon("bolt"))
  )
)

# Body -------------------------------------------------------------------------|

body<-dashboardBody(
  tabItems(
    tabItem(tabName = 'Overview',
            fluidRow(     
              dataTableOutput("overviewtable")
            )
    ),
    tabItem(tabName = 'weather',
            fluidRow(
              
            )
    )
  )
)



# UI ---------------------------------------------------------------------------|

ui = dashboardPage(
  header,
  sidebar,
  body
)

shinyApp(ui,server)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM