【发布时间】:2016-09-25 14:55:00
【问题描述】:
我制作了一个 PCA 图,我在其中根据不同基因的表达绘制了许多细胞。在这个情节中,我想用单独的颜色为一些点着色。我试图通过创建“组”来实现这一点,在其中我根据细胞的表达或缺乏“gene1”的表达对细胞进行分类。
这是我的数据框的样子(gene1、gene2 和 cell_1、cell_2 等是 colnames 和 rownames):
gene1 gene2 gene3 gene4 gene5
cell_1 0.0000 0.279204 25.995400 46.171700 94.234100
cell_2 0.0000 23.456000 77.339800 194.241000 301.234000
cell_3 2.0000 13.100000 45.309200 0.776565 0.000000
cell_4 0.0000 10.500000 107.508000 3.032500 0.000000
cell_5 3.0000 0.000000 0.266139 0.762981 123.371000
这是我用来尝试实现此目的的代码:
library(ggplot2)
library(ggfortify)
# Group cells based on expression of a certain gene (to use for color labels in the next step)
groups <- factor(ifelse(df$gene1 > 0, "Positive", "Others"))
#Calculate PCs and plot PCA
autoplot(prcomp(log(df[]+1)), colour="Positive")
当我运行此代码时,我收到以下错误:
Error in grDevices::col2rgb(colour, TRUE) : invalid color name 'Positive'
【问题讨论】:
-
您应该使用组变量,而不是组变量中的特定标签。
-
@Pieter 谢谢。我应该提到 - 我尝试使用“组”和“其他”也有同样的错误。 (grDevices::col2rgb(color, TRUE) 中的错误:颜色名称“组”无效)