2017-07-10 99 views
3

我希望能夠在ggplot中用每條線的圖例標註三條線圖,因此在圖上我們可以知道哪條線與哪些線相關聯。這是我目前的設置:ggplot中的標籤

ggplot(Months, aes(x = Month_Num)) + 
    geom_line(aes(y = A), colour = "blue") + 
    geom_line(aes(y = B), colour = "green") + 
    geom_line(aes(y = C), colour = "red")+ 
    ylab(label = "Total") + 
    xlab("Month Num") + 
    ggtitle("Total by Month Num") 

如何創建行A,B和C的圖例?謝謝,

回答

3

我想這是你想要的東西:

df <- data.frame(month = 1:5, 
       A = 1:5, 
       B = 6:10, 
       C = 11:15) 

ggplot(df, aes(x = month)) + 
    geom_line(aes(y = A, col = "A")) + 
    geom_line(aes(y = B, col = "B")) + 
    geom_line(aes(y = C, col = "C")) + 
    ylab(label= "Total") 

enter image description here

+0

你應該可以。只需將一個數字作爲一個字符傳遞給geom_line()圖層中的顏色審美。 – Odysseus210

+0

完美,這個作品很棒。謝謝 –

+0

沒問題!別客氣! :) – Odysseus210

3

您可以在更短的方式做到這一點從廣轉換數據長期

library(tidyverse) 
df %>% gather("var", "total", 2:4) %>% 
    ggplot(., aes(month, total, group = var, colour = var))+ 
    geom_line() 

enter image description here