R 带刷和链接的闪亮平行坐标

R 带刷和链接的闪亮平行坐标,r,shiny,flexdashboard,parallel-coordinates,R,Shiny,Flexdashboard,Parallel Coordinates,我正在使用Rstudio在R中创建一个flexdashboard/Shiny应用程序,并尝试创建一个包含两个组件的仪表板:顶部的平行坐标图和图形下方的表格 我尝试使用刷牙和链接来选择平行坐标图中的特定轴,以影响和过滤表中的数据 以下是我的代码改编自: 正如您所看到的,刷牙和链接不起作用。我错过了什么?我已经读了一些关于这个主题的问题,特别是关于XY变量和只处理散点图等。但肯定有办法解决这个问题,我似乎找不到解决办法。有没有人知道如何使刷子和链接在有光泽的平行坐标下工作?我试图找到解决您问题的方法

我正在使用Rstudio在R中创建一个flexdashboard/Shiny应用程序,并尝试创建一个包含两个组件的仪表板:顶部的平行坐标图和图形下方的表格

我尝试使用刷牙和链接来选择平行坐标图中的特定轴,以影响和过滤表中的数据

以下是我的代码改编自:


正如您所看到的,刷牙和链接不起作用。我错过了什么?我已经读了一些关于这个主题的问题,特别是关于XY变量和只处理散点图等。但肯定有办法解决这个问题,我似乎找不到解决办法。有没有人知道如何使刷子和链接在有光泽的平行坐标下工作?

我试图找到解决您问题的方法,但实际上目前无法使用刷子从任何平行坐标绘图(plotly或ggplot2)检索数据。您可以轻松地在绘图中使用画笔,但如果选择了画笔数据,则无法从画笔中获取数据。也许你应该尝试另一种绘图类型

我已尝试找到您问题的解决方案,但实际上,目前无法使用画笔从任何平行坐标plot LY或ggplot2中检索数据。您可以轻松地在绘图中使用画笔,但如果选择了画笔数据,则无法从画笔中获取数据。也许你应该尝试另一种绘图类型

画笔似乎不支持GGPLOT2的平行坐标绘图。您可以查看plotly软件包,而不是TEADTHEARD@Malvina_a。我曾详细研究过,但希望在R/Shiny中实现这一点。另外,请进一步查看:plotly中提供了刷牙和链接,请查看此链接:再次感谢@Malvina_a。我想尝试一下,但看起来所有的输入图都是XY坐标散点图,这让我认为这取决于是否有一个明确定义的xvar。似乎画笔不支持GGPLOT2的平行坐标图。你可以看看plotly package而不是TEADSWORK@Malvina_a。我曾详细研究过,但希望在R/Shiny中实现这一点。另外,请进一步查看:plotly中提供了刷牙和链接,请查看此链接:再次感谢@Malvina_a。我尝试了一下,但看起来所有的输入图都是XY坐标散点图,这让我觉得这取决于有一个明确定义的xvar。
    ---
    title: "ggplot2 Brushing"
    output: 
      flexdashboard::flex_dashboard:
        orientation: columns
        social: menu
        source_code: embed
    runtime: shiny
    ---

    ```{r global, include=FALSE}
    # load data in 'global' chunk so it can be shared by all users of the dashboard
    library(datasets)
    mtcars2 <- mtcars[, c("mpg", "cyl", "wt")]
    ```


    ```{r}
    # Reactive that returns the whole dataset if there is no brush
    selectedData <- reactive({
      data <- brushedPoints(mtcars2, input$plot1_brush)
      if (nrow(data) == 0)
        data <- mtcars2
      data
    })
    ```

    Column {data-width=650}
    -----------------------------------------------------------------------

    ### Miles Per Gallon vs. Weight {data-width=600}

    ```{r}
    library(ggplot2)
    library(GGally)
    plotOutput("plot1", brush = brushOpts(id = "plot1_brush"))
    output$plot1 <- renderPlot({
      ggparcoord(mtcars2) + geom_line()
    })
    ```

    ### Car Details {data-width=400}

    ```{r}
    renderTable({
      selectedData()
    }, rownames = TRUE)
    ```