給定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