我有一個ggplot2情節,通過兩個變量對數據進行分組,我想對標籤文本的格式進行一些控制。下面使用nlme軟件包中的Oxboys數據集來說明這個問題。我在數據中添加了一個名爲'label'的列,以便'Subject'和'label'的組合可以唯一標識'Subject'。在我實際使用的數據中,感興趣的兩個變量是唯一識別網格上的點的x,y座標,因此下面是對輸出格式的奇怪建議。如何格式化ggplot2圖例中的標籤?
以上面的圖例項目爲例,我們如何重新格式化它以顯示: 「10 10」或「10,10」或「10ºN,10ºW」*?有什麼方法可以利用sprintf(),或者你能完全想到另一種方式嗎?
一種解決方法是在數據框中創建一個新列以定義組並提供標籤。這會比直接在gglpot中進行格式化的工作少嗎?
library(nlme)
library(ggplot2)
df <- transform(Oxboys, label = Subject)
p <- ggplot(df, aes(x = Occasion, y = height,
group = interaction(Subject, label),
color = interaction(Subject, label)))
p + geom_line()
*關於改變圖例標題的答案獎勵積分。