我想在数据点旁边添加标签。我知道这个问题已经在该站点上得到了多次回答,并且text函数的效果很好,但是当有许多重叠的数据点时,我还有其他技巧可以与R base函数一起使用来使标签可见吗?下面是一个用数字标签绘制的数据示例,但其中大多数无法区分。
散点图:
答案 0 :(得分:3)
假设您有:
library(gapminder); library(ggplot2)
ggplot(gapminder[gapminder$year == 2007,],
aes(gdpPercap, lifeExp, label = country)) +
geom_text(check_overlap = T)
1)如果您不介意丢失一些内容,请使用check_overlap:
ggplot(gapminder[gapminder$year == 2007,],
aes(gdpPercap, lifeExp, label = country)) +
geom_text(check_overlap = T)
2)ggrepel
的{{1}}将迭代微移文本以减少/消除重叠。在这种情况下,点数太大,我不得不缩小字体以使其完全起作用。
geom_text_repel
3)如果沿线绘制,则可能会定期采样点:
ggplot(gapminder[gapminder$year == 2007,],
aes(gdpPercap, lifeExp, label = country)) +
ggrepel::geom_text_repel(size = 2, box.padding = 0.01)
有无采样: