【问题标题】:Why does text appear in the legend?为什么文字会出现在图例中?
【发布时间】:2018-11-17 06:51:46
【问题描述】:
library(ggplot2)
library(ggrepel)
set.seed(1234)
ss <- sample(1:32, 10)
df <- mtcars[ss, ]

ggplot(df, aes(wt, mpg))+ geom_point(col = "red") + 
  geom_label_repel(aes(label = rownames(df), fill = factor(cyl)), size = 5,
                   hjust = 1,fontface = 3)

在传说中,为什么'a'出现在4,6,8旁边?

【问题讨论】:

标签: r ggplot2 ggrepel


【解决方案1】:

a 表示geom_label_repel() 添加的文本,它与您的标签的字体、颜色等相匹配。

下图显示了包示例小插图中显示的ggrepel 包的演示示例之一:

您可以看到相同的内容,但将不同的选项作为参数传递给geom_label_repel()

如果您确实想从图例中删除字母“a”,您可以重新定义图例键,如 here 所示:

# save original legend key for later
oldK <- GeomLabelRepel$draw_key

# define new key without the text label
library(grid)
GeomLabelRepel$draw_key <- function (data, params, size) { draw_key_rect(data) }

# plot
ggplot(df, aes(wt, mpg))+ geom_point(col = "red") + 
  geom_label_repel(aes(label = rownames(df), fill = factor(cyl)), size = 5,
                  fontface = 3)

# reset key
GeomLabelRepel$draw_key <- oldK

【讨论】:

  • prosoitos :我希望它可以包括对您的答案的编辑 - 如果没有,请回滚
  • 我很好。 OP 并没有询问如何删除那些a,但我相信这对他们或其他人都会有用,因此可以提供更好的答案。感谢您的检查:)
猜你喜欢
  • 1970-01-01
  • 2020-10-03
  • 1970-01-01
  • 1970-01-01
  • 2013-10-27
  • 1970-01-01
  • 1970-01-01
  • 2018-12-26
  • 1970-01-01
相关资源
最近更新 更多