“对象'freq'未找到”在UpSetR中应用颜色时出错

时间:2017-11-17 14:52:44

标签: r upsetr

如果我运行此代表,我会得到所需的输出:

``` r
library(UpSetR)
listInput <- list(one = c(1, 2, 3, 5, 7, 8, 11, 12, 13), 
                  two = c(1, 2, 4, 5, 10), 
                  three = c(1, 5, 6, 7, 8, 9, 10, 12, 13))

upset(fromList(listInput), order.by = "freq")
```

如果我应用颜色,我会收到以下错误。

``` r
library(UpSetR)
listInput <- list(one = c(1, 2, 3, 5, 7, 8, 11, 12, 13), 
                  two = c(1, 2, 4, 5, 10), 
                  three = c(1, 5, 6, 7, 8, 9, 10, 12, 13))

upset(fromList(listInput), order.by = "freq",
      queries = list(list(query = intersects, params = list("one"), color = "orange", active = T)))
#> Error in eval(expr, envir, enclos): object 'freq' not found
```

我看过小插曲中的着色“示例5”,但无法发现我的错误。

1 个答案:

答案 0 :(得分:3)

将一列整数添加到输入upset的数据框中。

library(UpSetR)
listInput <- list(one = c(1, 2, 3, 5, 7, 8, 11, 12, 13), 
                  two = c(1, 2, 4, 5, 10), 
                  three = c(1, 5, 6, 7, 8, 9, 10, 12, 13))
df <- fromList(listInput)
df$n <- sample(1:nrow(df))

upset(df, order.by = "freq",
      queries = list(list(query = intersects, 
                          params = list("one"), 
                          color = "orange")))

enter image description here