0
require(reshape2);require(ggplot2)
df <- data.frame(time = 1:10,
x1 = rnorm(10),
x2 = rnorm(10),
x3 = rnorm(10),
y1 = rnorm(10),
y2 = rnorm(10))
df <- melt(df, id = "time")
ggplot(df, aes(x = time, y = value, color = variable, group = variable,
size = variable, linetype = variable)) +
geom_line() +
scale_linetype_manual(values = c(rep(1, 3), 2, 2)) +
scale_size_manual(values = c(rep(.3, 3), 2, 2)) +
scale_color_manual(values = c(rep("grey", 3), "red", "green")) +
theme_minimal()
這個例子可能不是非常有代表性,但是,例如,想象一下一羣運行迴歸模型,其單獨並不重要,但只是有助於畫面。雖然我只想強調實際和平均擬合系列。所以基本上變量x並不重要,不應該出現在圖例上。
我試圖設置scale_color_discrete(breaks = c("y1", "y2"))
建議在其他一些職位。但問題是,所有的美學已經通過手動使用,試圖設置另一個離散版本將覆蓋已經爲圖形設置的屬性(並且弄亂了整個事物)。所以理想情況下 - 我想看到完全相同的圖形,但只有y1和y2顯示在圖例中。