2015-06-20 136 views
1

我是R的新手,我正尝试创建一个简单的barplot。我已经能够创建具有正确值的barplot,但所有条形图只有一种颜色。如果我稍微更改代码(使用table()而不是as.table()),我会得到错误的值,但图表上的颜色是正确的。我怎样才能让as.table()在图中接受多种颜色?下面是我的代码的修改过的版本:R-Project Barplot颜色

a=30 
b=20 
c=10 
d=15 
x=matrix(c(a,b,c,d),ncol=4,byrow=TRUE) 
colnames(x)=c("Label1","Label2","Label3","Label4") 
    rownames(x)=c("Percentage") 
    x=as.table(x) 
    color=c("red","blue","green","orange") 
barplot(x,main="X",ylab="Percent",cex.names=0.75,col=color) 

回答

1

的载体,而不是一个表传递应该做的伎俩:

barplot(x[1, ], main="X", ylab="Percent", cex.names=0.75, col=color) 

或者

barplot(x["Percentage", ], main="X",ylab="Percent",cex.names=0.75, col=color) 

enter image description here

+0

多亏了你们两个!这解决了一个非常令人沮丧和看似简单的困境。 – David

2

使用beside = TRUE参数:

barplot(x, beside = TRUE, main="X", ylab="Percent", cex.names=0.75, col=color) 

enter image description here