2011-09-10 71 views
13

如何更改格子條中顯示的文本? 例如: 假設我有一個數據幀試驗中,由3列更改格子條上的文本

x 
[1] 1 2 3 4 5 6 7 8 9 10 

y 
[1] "A" "A" "A" "A" "A" "B" "B" "B" "B" "B" 

a 
[1] -1.9952066 -1.7292978 -0.8789127 -0.1322849 -0.1046782 0.4872866 
[7] 0.5199228 0.5626998 0.6392686 1.6604549 

正常呼叫到晶格情節

xyplot(a~x | y,data=test) 

將給與文字「A」和「B」的情節在條上

如何獲得寫在條上的不同文本?

與另一個字符向量

z 
[1] "a" "a" "a" "a" "a" "b" "b" "b" "b" "b" 

和呼叫的attept到strip.custom()

xyplot(a~x | y,data=test,strip=strip.custom(var.name=z)) 

不給所期望的結果。

實際上這是一個國際化問題。

回答

8

如果你讓你的特徵向量的一個因素,然後你可以改變級別:

> xyplot(a~x | y,data=test)  # your plot 
> test$y=as.factor(test$y)  # convert y to factor 
> xyplot(a~x | y,data=test)  # should be identical 
> levels(test$y)=c("Argh","Boo") # change the level labels 
> xyplot(a~x | y,data=test)  # new panel labels! 
14

我想你想獲得人什麼:

z <-c("a" , "b") # Same number of values as there are panels 
xyplot(a~x | y,data=test,strip=strip.custom(factor.levels=z)) 
+1

你不需要' z'變量:factor.levels = c(「a」,「b」)將執行此操作。 – Spacedman

+1

我只是想強調它需要具有與面板相同數量的層次而不是數據點的數量 –

相關問題