簡體   English   中英

在ggplot2中使用group,linetype和color時的單個圖例?

[英]Single legend when using group, linetype and colour in ggplot2?

我正在創建一個非常簡單的繪圖,它將數據分組並使用分組變量來確定線條樣式和顏色。 然后我使用'scale_linetype_manaul'和'scale_colour_manual'覆蓋那些。 到目前為止一切都那么好,但是當我嘗試修改圖例標簽或其標題時,圖例分為兩部分:一部分用於線型,一部分用於顏色。 我只想要一個傳奇,但有自定義標簽和標題。

這個問題之后 ,我確保將兩個比例對象命名為相同,但這似乎沒有幫助。

最小的例子:

X <- data.frame(TPP=factor(c(1,5,10,1,5,10,1,5,10)), 
                value=c(-0.035819, 0.003356, 0.066091, -0.028039, 0.004333, 0.060292, -0.023115, 0.005661, 0.058821), 
                horizon=c(1,1,1,2,2,2,3,3,3))
ggplot(X, aes(x=horizon, y=value, group=TPP, col=TPP, linetype=TPP))+
  geom_line(size=1)+
  scale_linetype_manual(name="X", values = c("solid","dashed", "dotted")) +
  scale_color_manual(name="X", values = c("black", "red", "blue"), labels=c("Low", "5","High"))

這產生了下和兩個圖例。 如何使用自定義標簽和標題重新組合這些圖例?

這可能有所幫助:

 ggplot(X, aes(x=horizon, y=value, group=TPP, col=TPP, linetype=TPP))+geom_line(size=1)+
  scale_linetype_manual(name="X", values = c("solid","dashed", "dotted"),labels=c("Low", "5","High")) +
  scale_color_manual(name ="X", values = c("black", "red", "blue"),labels=c("Low", "5","High"))

在此輸入圖像描述

如果scale_color_manualscale_linetype_manual中定義的標簽不同,或者只在其中一個中指定了標簽,則會獲得兩個不同的圖例。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM