Блестящие последовательные реактивные таблицы данных - PullRequest
0 голосов
/ 06 марта 2019

Я новичок в сиянии и в р. Я создаю динамическую блестящую приборную панель. где пользователям нужно выбрать строку из первой таблицы, и с несколькими значениями ячеек столбцов пользователи должны фильтровать данные, и это продолжается. Из новой второй таблицы, созданной пользователем, снова выбирается строка во второй таблице. И выбранная строка некоторых значений используется для фильтрации существующего набора данных и отображения его в виде блестящих элементов. и т. д.

Я написал пример кода, но он не работает.

df <- data.frame(id = sample(c(1,2,3,4),15, replace = T ),
             day = sample(c("Mon", "Tue", "Wed"),15, replace = T),
             hour_hand = c(0:14),
             price =sample(c(121,221,112,231,444), replace = T))

df_day <- df %>% 
group_by(id) %>% 
summarise(price = sum(price))


df_day_hour <- df %>% 
group_by(id, day) %>% 
summarise(price = sum(price))




ui <- dashboardPage(skin = "red",
                dashboardHeader(title = "2_level_drill_down"),
                dashboardSidebar(sidebarMenu(menuItem("Price", tabName = "tab_01", icon =icon("bar-chart")))),
                dashboardBody(tabItems(
                  tabItem(tabName = "tab_01",
                          tabsetPanel(
                            tabPanel("Id", DT::dataTableOutput("table_id")),
                            tabPanel("ID Day", DT::dataTableOutput("table_id_day")),
                            tabPanel("ID Day Hour",DT::dataTableOutput ("table_id_day_hour"))))
                  )))

server <- function(input, output){
#Id table
output$table_id <- renderDT(DT::datatable({
data =df
 }))

 #Id Day group_by  table
output$table_id_day <- renderDT(DT::datatable({
s = input$table_id_rows_selected
v <- unique(df[s,c("id")])
data = df_day[df_day$id %in% v,]
}))


 #ID Day Hour group_by  Table
 output$table_id_day_hour <- renderDT({
 s_3 = input$table_nodal_day_rows_selected
 id_3 <- unique(id_day_df[s_2,c("id")])
 day_2 <- unique(id_day_df[s_2,c("day")])
 data = df_day_hour[df_day_hour$id %in% id_3 & df_day_hour$day %in% day_2,]
 }) 




}


#####
shinyApp(ui,server)
...