簡體   English   中英

更改ggplot圖例標題

[英]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.

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