R如何根据rect图中的分类变量分配两种不同的颜色?

时间:2012-08-23 11:46:28

标签: r

有没有办法根据rect graph中的分类值分配两种不同的颜色?

rect(0, yb, Studies.sort,yt,col=("black","lightgray"[Area$"Theory"])
显然......这是错误的.....

区域由两个分类变量组成 - “理论”和“职业”。

2 个答案:

答案 0 :(得分:4)

你很亲密,以下工作:

plot(1:10)
mydf <- data.frame( xl =1:5, yb=1:5, xr=2:6, yt=10:6, 
    group=sample( c('A','B'), 5, replace=TRUE) )
with(mydf, rect( xl, yb, xr, yt, col=c('black','grey')[group]) )

重要的是,这里的群体是一个因素(不仅仅是一个角色向量)。但是,如果您使用颜色的命名向量(名称与组变量匹配),那么它也可以使用字符向量。

答案 1 :(得分:2)

您需要为要绘制的每种颜色调用rect,并将这些颜色放在数据框的分类列中,以便您可以为每次调用{{1}的每个类别过滤数据}。

我不知道您的原始数据是什么样的,所以这里有类似的东西:

rect