我有如下图.它是使用此命令创建的:
library(ggplot2)
df <- data.frame(cond = factor(rep(c("A", "B"), each = 200)),
rating = c(rnorm(200), rnorm(200, mean=.8)))
ggplot(df, aes(x=rating, fill=cond)) +
geom_density(alpha = .3) +
xlab("NEW RATING TITLE") +
ylab("NEW DENSITY TITLE")
Run Code Online (Sandbox Code Playgroud)
现在,接下来我要做的事情就是修改图例标题从COND进入新里程TITLE.
所以我所做的只是添加以下行添加上面代码的结尾:
+labs(colour="NEW LEGEND TITLE")
Run Code Online (Sandbox Code Playgroud)
但它不起作用.什么是正确的方法呢?

Aru*_*run 313
这应该工作:
p <- ggplot(df, aes(x=rating, fill=cond)) +
geom_density(alpha=.3) +
xlab("NEW RATING TITLE") +
ylab("NEW DENSITY TITLE")
p <- p + guides(fill=guide_legend(title="New Legend Title"))
Run Code Online (Sandbox Code Playgroud)
(或者)
p + scale_fill_discrete(name = "New Legend Title")
Run Code Online (Sandbox Code Playgroud)
Roh*_*ale 187
我没有深入研究这个,但因为你在ggplot()中使用了fill = cond,
+ labs(color='NEW LEGEND TITLE')
Run Code Online (Sandbox Code Playgroud)
可能没有用.然而,更换颜色的填充,它的作品!
+ labs(fill='NEW LEGEND TITLE')
Run Code Online (Sandbox Code Playgroud)
这在ggplot2_2.1.0中对我有用
PS我会评论,但我的stackoverflow声誉不足以评论.
use*_*1_G 40
由于你有两个密度,我想你可能想要设置自己的颜色scale_fill_manual.
如果是这样,你可以做到:
df <- data.frame(x=1:10,group=c(rep("a",5),rep("b",5)))
legend_title <- "OMG My Title"
ggplot(df, aes(x=x, fill=group)) + geom_density(alpha=.3) +
scale_fill_manual(legend_title,values=c("orange","red"))
Run Code Online (Sandbox Code Playgroud)

小智 18
以上代码都不适合我.
这是我发现的,它的工作原理.
labs(color = "sale year")
您还可以通过\n在末尾添加标题和显示之间的空格.
labs(color = 'sale year\n")
小智 15
因为在您的代码中,您曾经ggplot(data, fill= cond)创建直方图,您还需要在标签部分使用"填充"添加图例标题,即+labs(fill="Title name").如果您使用的代码是ggplot(data,color = cond),那么您可以使用不同类型的绘图+labs(colour= "Title Name").总之,lab参数必须与aes参数匹配.
我曾经+ guides(fill=guide_legend("my awesome title"))在geom_bar图上更改了图例标题,但它似乎不适用于geom_point.
小智 7
唉,这些解决方案都不适合我。我正在处理 brms::conditional_effects() 的输出
我的解决方案需要:
+ labs( fill = "New Title", colour = "New Title", labels = "New Title" )
Run Code Online (Sandbox Code Playgroud)
我在 ggplot 中使用facet_wrap,除了 ArnaudA 的解决方案之外,所有建议的解决方案都不适合我:
\n\nqplot(\xe2\x80\xa6) + guides(color=guide_legend(title="sale year")) \nRun Code Online (Sandbox Code Playgroud)\n
还有一个非常简单的答案可以用于一些简单的图表.
只需在图表中添加对guide_legend()的调用即可.
ggplot(...) + ... + guide_legend(title="my awesome title")
Run Code Online (Sandbox Code Playgroud)
如非常好的ggplot文档所示.
如果这不起作用,您可以通过调用指南更精确地设置指南参数:
ggplot(...) + ... + guides(fill=guide_legend("my awesome title"))
Run Code Online (Sandbox Code Playgroud)
您还可以通过为呼叫指定这些参数来改变形状/颜色/大小guides.
| 归档时间: |
|
| 查看次数: |
438077 次 |
| 最近记录: |