由于你有两个密度,我想你可能想要设置自己的颜色 scale_fill_manual 。
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"))
我没有深入研究这个,但因为你使用过 的 填写= COND 强> 在ggplot()中,
+ labs(color='NEW LEGEND TITLE')
可能没有用。但是你替换它 的 颜色 强> 通过 的 填 强> , 有用!
+ labs(fill='NEW LEGEND TITLE')
这在ggplot2_2.1.0中对我有用
附:我会评论,但我的stackoverflow声誉不足以评论。
我在我的ggplot中使用了facet_wrap,除了ArnaudA的解决方案之外,没有任何建议的解决方案适用于我:
qplot(��) + guides(color=guide_legend(title="sale year"))
因为你在代码中使用过 ggplot(data, fill= cond) 要创建直方图,您还需要在标签部分使用“填充”添加图例标题,即 +labs(fill="Title name") 。如果您使用的是不同类型的图,其中代码是ggplot(data,color = cond),那么您可以使用 +labs(colour= "Title Name") 。总之,lab参数必须与aes参数匹配。
ggplot(data, fill= cond)
+labs(fill="Title name")
+labs(colour= "Title Name")
我用过 + guides(fill=guide_legend("my awesome title")) 更改geom_bar图上的图例标题,但它似乎不适用于geom_point。
+ guides(fill=guide_legend("my awesome title"))
这应该工作:
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"))
(或者)
p + scale_fill_discrete(name = "New Legend Title")
很多人花了很多时间来更改标签,图例标签,标题和轴的名称,因为他们不知道可以在R中加载包含空格的表 " " 。但是,您可以通过在加载表格时指定分隔符来节省时间或减小代码大小,例如使用制表符(或默认值或单个空格之外的任何其他分隔符)分隔:
" "
read.table(sep = '\t')
或者使用csv格式的默认加载参数:
read.csv()
这意味着您可以直接保留名称 "NEW LEGEND TITLE" 作为原始数据文件中的列名(标题),以避免在每个绘图中指定新的图例标题。
"NEW LEGEND TITLE"
以上代码都不适合我。
这是我发现的,它的工作原理。
labs(color = "sale year")
您还可以通过添加在标题和显示之间添加空格 \n 在末尾。
\n
labs(color = 'sale year\n")
只是要添加到列表(此处的其他选项对我不起作用),您还可以使用函数update_labels for ggplot:
p <- ggplot(df, aes(x=rating, fill=cond)) + geom_density(alpha=.3) + xlab("NEW RATING TITLE") + ylab("NEW DENSITY TITLE")
update_labels(p, list(colour="MY NEW LEGEND TITLE")
这也允许您使用单独的行更改x轴和y轴标签:
update_labels(p, list(x="NEW X LABEL",y="NEW Y LABEL")
您还可以添加一行(最后一行):
ggplot(df, aes(x=rating, fill=cond)) + geom_density(alpha = .3) + xlab("NEW RATING TITLE") + ylab("NEW DENSITY TITLE") + labs(fill = "Your Title")