barplot()根据列中的类别数为条形图提供不同的灰色

barplot()根据列中的类别数为条形图提供不同的灰色,r,R,我在R中有一个数据帧。在每个数据帧中有8个变量 我想制作一个条形图,其中我想根据一个特定变量中的值为条形图指定不同的灰色阴影 这就是我制作条形图的方式: barplot(x$cov, names.arg = x$exon, xlab = x$gene[1], ylab = "read depth" , border = gray.colors(???)) 变量外显子由整数组成。例如: 0 0 0 0 1 1 1 2 2 3 3 3 3 4 4 4 所以我希望所有$

我在R中有一个数据帧。在每个数据帧中有8个变量

我想制作一个条形图,其中我想根据一个特定变量中的值为条形图指定不同的灰色阴影

这就是我制作条形图的方式:

barplot(x$cov, names.arg = x$exon, 
    xlab = x$gene[1],
    ylab = "read depth" , 
    border = gray.colors(???))
变量外显子由整数组成。例如:

0 0 0 0 1 1 1 2 2 3 3 3 3 4 4 4
所以我希望所有
$exon=0
的条都是灰色的 所有
$exon=1
为灰色的条,以此类推


有人能帮我一下吗?

首先,定义了包含
cov
exon
值的样本数据框

x<-data.frame(cov=sample(1:20,20),exon=rep(0:4,each=4))

barplot(x$cov, names.arg = x$exon, 
        ylab = "read depth" , 
        col = gray.colors(length(unique(x$exon)))[as.factor(x$exon)])