首页 > 解决方案 > 如何在 Shiny R 中进一步聚合过滤后的数据

问题描述

这是我的输入的样子:

OrderDate | Company | ApprovalID | Amount |State,
2009-01-02 | A | AC | 200 | NY,
2009-01-05 | A | BT | 20000 | NY,
2009-01-04 | A | AC | 500 | CO,
2009-01-02 | B | XY | 2000 | TX,
2009-05-41 | B | XY | 30 | TX,
2009-04-21 | D | CR | 2222 | BR,

我让我的用户输入日期范围和公司

                       tabPanel("Plot", fluid = TRUE,
                                sidebarLayout(
                                    sidebarPanel(id = 'sidebar',
                                        dateRangeInput("dateinput","Selects Dates",start = Sys.Date()-30,end = Sys.Date()),
                                                 selectInput("companyinput", "Select Comp", choices=choices1,multiple = TRUE,selected = NULL) 
                                                 ),

因此,如果用户选择 2009-01-01 和 2009-01-31 和公司 A 之间的日期。我想要一个显示的表格:

OrderDate | Company | ApprovalID | Amount |State ,
2009-01-02 | A | AC | 200 | NY ,
2009-01-05 | A | BT | 20000 | NY,
2009-01-04 | A | AC | 500 | CO,
   filtered <- reactive({
            if(is.null(input$companyinput)){
            bc3 %>%
                filter(as.Date(OrderDate) > input$dateinput[1],
                       as.Date(OrderDate) >= input$dateinput[2],
                )

                }
            else{
                bc3 %>%
                    filter(as.Date(OrderDate) > input$dateinput[1],
                           as.Date(OrderDate) >= input$dateinput[2],
                           CompanyNameID == input$companyinput
                    )

但是然后在同一个仪表板中,我想显示不同的图表:

进一步在 ApprovalID 和 Amount 处聚合,即让我们说一个条形图显示 AC 花费了 700 和 BT 花费了 20000(之前的过滤器或订单日期和公司完好无损)然后其他图表在 State 和 Amount 处聚合,即让我们说一个显示状态和金额的条形图(再次订购日期和用户选择的公司)

有没有办法这样做,或者将反应输入存储为数据框,以便我可以按照我想要的方式操作它。

谢谢,高压

标签: rshinydata-visualization

解决方案


推荐阅读