下面我在R中提到了一个数据框。
Dev1:
ID Date Value Result
KK-112 2018-07-01 15:37:45 ACR Pending
KK-113 2018-07-05 18:14:25 ACR Pass
KK-114 2018-07-07 13:21:55 ARR Accepted
KK-115 2018-07-12 07:47:05 ARR Rejected
KK-116 2018-07-04 11:31:12 RTR Duplicate
KK-117 2018-07-07 03:27:15 ACR Pending
KK-118 2018-07-18 08:16:32 ARR Rejected
KK-119 2018-07-21 18:19:14 ACR Pending
使用上述数据框,我在R中创建了以下数据透视表数据框。
Value Pending Pass Accepted Rejected Duplicate
ACR 3 1 0 0 0
ARR 0 0 1 2 0
RTR 0 0 0 0 0
这里只需要一点帮助,以了解我如何才能在一个月内在这里使用Date
来创建一个闪亮的仪表板,它可以根据特定的月份范围或日期范围为我计数。
我正在使用下面提到的示例代码来传递数据框,但是没有用。
library(shiny)
library(dplyr)
library(shinydashboard)
ui <- dashboardPage(
dashboardHeader(),
dashboardSidebar(),
dashboardBody()
)
server <- function(input, output) {
Date<-Dev1$Date
{
Pivot<-dcast(Dev1, Value ~ Result, value.var="ID",
fun.aggregate=length)
Pivot$Total<-rowSums(Pivot[2:3])
}
}
shinyApp(ui, server)
答案 0 :(得分:2)
您可以使用tableHTML
:
将tableHTML_output()
添加到您的UI中以显示表格:
ui <- dashboardPage(
dashboardHeader(),
dashboardSidebar(),
dashboardBody(
tableHTML_output("mytable")
)
)
在服务器中,在tableHTML
中创建一个render_tableHTML()
对象。您可以调整表格的外观,查看小插图以了解详细信息。
server <- function(input, output) {
Date<-Dev1$Date
{
output$mytable <- render_tableHTML( {
Pivot<-data.table::dcast(Dev1, Value ~ Result, value.var="ID",
fun.aggregate=length)
Pivot$Total<-rowSums(Pivot[2:3])
Pivot %>%
tableHTML(rownames = FALSE,
widths = rep(80, 7))
})
}
}
shinyApp(ui, server)
最终结果如下: