[英]Change ggplot legend title
所以這是我的ggplot的代碼。 如何最簡單地更改圖例的標題? 我知道我可以將我的gg_group
變量更改為my_title <- c(rep("train",10), rep("validation", 10))
。 但我想把標題更改為“ whatever I want
”而不改變任何變量。
library(ggplot2)
y <- c(rnorm(10,1), rnorm(10,3))
x <- rep(seq(1,10,1),2)
gg_group <- c(rep("train",10), rep("validation", 10))
gg_data <- data.frame(y=y, x=x, gg_group=gg_group)
p <- ggplot(gg_data, aes(x=x, y=y, group=gg_group))
p + geom_line(aes(colour=gg_group))
我也試過這段代碼:
p + geom_line(aes(colour=gg_group)) + scale_shape_discrete(name="Dataset",labels=c("Train", "Validation"))
但這不起作用。 *編輯,檢查來自Jaap和JasonAizkalns的優秀snwer。
@Jaap是對的。 如果使用scale_color_discrete
,則可以使用名稱更改圖例的名稱,並且不必將任何參數傳遞給labels
因為它們將采用colour
美學中定義的名稱。 這是考慮之間的差異:
p + geom_line(aes(colour = gg_group)) +
scale_color_discrete(name = "Dataset")
和
p + geom_line(aes(colour = gg_group)) +
scale_color_discrete(name = "Dataset",
labels = c("New Label 01", "New Label 02"))
它不起作用的原因是因為你沒有在ggplot
代碼中使用shape
。 相反,您應該使用scale_color_discrete
,如下所示:
scale_color_discrete("Dataset")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.