2014-03-12 44 views
1

我在Mac上的R-Studio的繪圖窗口內繪製了帶有Lattice的xyplot。此外,我對萊迪思的交互功能panel.identify感興趣,以獲得用鼠標單擊的數據點的標籤。在R-Studio中使用Lattice panel.identify

library(lattice) 

df= mtcars 

xyplot(mpg ~ disp | as.factor(gear), 
     data= df, 
     layout = c(1, 3), 
     type= c("p", "g"), 
     subscripts= TRUE) 

while (!is.null(fp <- trellis.focus(clip.off=F))) { 
    if (fp$col > 0 & fp$row > 0) 
    panel.identify(labels = df$qsec) 
} 

問題: 我把工作萊迪思的情節,但panel.identify功能不能正常工作:從一個面板切換到另一種是不認可的。因此,一旦我首先選擇了特定的面板,panel.identify功能只能識別單擊面板上的數據。

問題: - 任何想法如何改善代碼?
- R-Studio是否限於在其自己的繪圖窗口中處理panel.identify功能?

+0

它在原始R中工作嗎? –

+0

感謝羅馬的這個測試提示。它幫助我理解了默認行爲。 – user2030503

回答

1

我剛剛學會了自己,問題中所描述的行爲實際上是規定的行爲。

解決開關面板:

您可以通過點擊一次ESC開關面板,那麼你可以通過點擊它把焦點移到另一個面板。 一旦您將重點放在新面板上,panel.identify將允許選擇新數據。小心地將ESC切換兩次,因爲這樣整個識別循環就會被清除。

這也適用於R-Studio。