Creating a ggplot legend with both color and shape有一種方法可以將形狀和顏色組合起來,但基於一個變量。我想知道如果變量被分解爲兩個變量,這是否可能。根據兩個變量創建具有顏色和線型的ggplot圖例
海爾是一個測試數據:
(x <- data.frame(time =rep(1:5,4)
, sex = rep(c("m","f"), each=5)
, val_type = rep(c("obs","fit"),each=10)
, val = rep(1:4,each=5)*rep(1:5,4)
)
)
爲了顯示我多麼希望有傳說我結合了兩個變量:
x$sv <- paste(x$sex,x$val_type,sep='-')
這裏是一個變量ggplot:
ggplot(data=x, aes(x=time, y=val, linetype=sv, col=sv)) +
geom_line() +
scale_colour_manual(name = ""
, values=c("red","red","blue","blue")
, labels=c("Female fitted","Female observed"
,"Male fitted","Male observed")
) +
scale_linetype_manual(name = ""
, values=c(1,2,1,2)
, labels=c("Female fitted","Female observed"
,"Male fitted","Male observed")
)
這裏是情節:
我想有同樣的傳說,但使用這兩個變量分別
ggplot(data=x, aes(x=time, y=val, linetype=val_type, col=sex)) +
geom_line()
這可能嗎?我不想使用組合變量的原因是我不想創建我不需要分析的變量。另一個原因是看傳奇如何可以手動定製。 感謝您的幫助。
這是很常見的,經常需要創建一個數據幀只是一個單一的情節,尤其是對於複雜的情節。我不認爲這是一個問題。但無論如何這是個好問題。 –