给定4个长度相等的向量(x,y,z,q)其中q是带有颜色名称的字符向量,用作分组结构 我运行xyplot命令:在r中的多面xyplot中使用颜色向量
xyplot(y~x|factor(z),pch=19,data=mydata,col=mydata$q)
一切工作正常,但过去z的第一因子水平,该地块不尊重颜色矢量q的顺序和点随机从颜色向量q指定的颜色。如果我调用向量q,我发现颜色名称对于z的每个级别都是正确排序的。
作为一个明显的例子: 在数据帧可以包含用于(X,Y,Z,Q)在以下值的行:(13,25,3月, “蓝”)
对于“ 3月“的情节,这个数据点会出现,但作为一种不同的颜色,虽然是矢量q的颜色。
我对使用带有cex分组结构的向量也有类似的问题;第一个因子水平产生正确的图,但其他因子水平不会根据具有分组结构的向量而改变。
如果这个问题不清楚,我会很乐意修改它,直到它有意义。我相信其他人也有这个问题。
str(cohort)
$ date : Date, format: "2012-03-05" "2012-03-05" ...
$ area : int 1111 3053 3555 3556 4228 6447 1111 ...
$ score : num 0.2282 0.1498 0.1823 0.0995 0.3083 ...
$ color : chr "purple" "blue" "brown" "violet" ...
$ cex3 : num 0.753 0.84 1.067 0.875 0.753 ...
$ pch3 : num 7 19 19 19 19 8 7 19 19 19 ...
$ time_spent : int 0 0 0 0 0 0 1 1 1 1 ...
工作命令:
xyplot(score~time_spent|factor(date),groups=area,data=cohort,ylim=c(0,.6),panel=function(x,y,subscripts){panel.xyplot(x=x,y=y,subscripts=subscripts,pch=cohort[subscripts,"pch3"],col=cohort[subscripts,"color"],col.line="black",cex=cohort[subscripts,"cex3"])})
实际分组载体我想文本在传说中是队列$面积... 的特征向量队列$颜色和矢量队列$ PCH 3使用作为分组结构,以直观地表示队列中的区域... 因此,我想要一个颜色代码/符号图例用于队列$ color和队列$ pch3,但是来自队列$ area的文本标签。
示例性图例:紫色的点状“1111” 蓝色点状“3053”等
想出了工作液:
xyplot(score ~ time_spent | factor(date), groups = area, data = cohort,auto.key=list(columns=10,points=TRUE,title="area"),
par.settings = list(superpose.symbol = list(col = sort(unique(cohort$color)),pch=sort(unique(cohort$pch3)))),
panel = function(x, y, subscripts = subscripts, groups = groups) {
panel.xyplot(x = x, y = y,
subscripts = subscripts, groups = groups,col.line="black",type=c("p","g"))})
尝试,只透过独特的颜色为'col'并添加东西了'groups'参数的函数。 – joran 2012-03-21 22:33:55