在ggplot2中添加分面标题和更改图例标题

7
我想知道如何在ggplot2中添加分面标题。
ggplot(diamonds, aes(cut)) + geom_bar() +   facet_grid(color ~ clarity)

并更改图例标题

ggplot(diamonds, aes(cut, fill=cut)) + geom_bar() +   facet_grid(. ~ clarity)

感谢您的帮助。
1个回答

9

这里提到的facets是根据使用的factor的级别进行标记的。因此,如果您只是更改了级别,例如

levels(diamonds$clarity) <- letters[1:8]

现在,这些方面将使用这些字母进行标记。图例标题与此美学映射的标签匹配,您可以通过以下方式设置:

+ labs(fill = "Fill legend label")

作为额外的提示,我注意到在`labs`中可以将`x`和`y`轴标签设置为`NULL`,但不能将图例标题设置为`NULL`,如果不需要标题,则使用空字符。
编辑:
根据您的澄清,您可以使用`grid.text`在绘图区域外添加文本。
print(qplot(1,1),vp = viewport(width = 0.9))
grid.text(unit(0.95,"npc"),0.5,label = "Right label", rot = 270)

enter image description here


感谢您的回复。labs(fill = "填充图例标签")是有效的。对于facet标题,我想添加一些标题而不是类别标签。 - MYaseen208
@MYaseen208 我想我已经回答了你的问题,希望能对你有所帮助。不过,你需要根据你的特定情况微调一下位置。 - joran
@MYaseen208 可能不行。但是我认为,如果您使用A.9中提到的技术,可以使其正常工作这里 - joran
仍然是解决方案吗?我收到了“错误:找不到函数grid.text”的消息。 - Hendy
@Hendy 我应该指定你需要使用 library(grid) 载入 grid - joran
显示剩余3条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接