r - geom_point 中的标签点

标签 r plot ggplot2 labeling ggrepel

我正在使用的数据来自下面列出的互联网来源

nba <- read.csv("http://datasets.flowingdata.com/ppg2008.csv", sep=",")

我想要做的是创建一个 2D 点图来比较此表中的两个指标,每个玩家代表图上的一个点。我有以下代码:

nbaplot <- ggplot(nba, aes(x= MIN, y= PTS, colour="green", label=Name)) + 
                  geom_point() 

这给了我以下内容:

NBA Plot

我想要的是在点旁边的玩家姓名标签。我认为 ggplot 美学中的标签函数可以为我做到这一点,但事实并非如此。

我还尝试了 library(calibrate) 中的 text() 函数和 textxy() 函数,这两个函数似乎都不适用于ggplot。

如何向这些点添加名称标签?

最佳答案

使用 geom_textaes 标签。您可以使用 hjust, vjust 来调整文本位置。

ggplot(nba, aes(x= MIN, y= PTS, colour="green", label=Name))+
  geom_point() +geom_text(hjust=0, vjust=0)

enter image description here

编辑:仅标记高于特定阈值的值:

  ggplot(nba, aes(x= MIN, y= PTS, colour="green", label=Name))+
  geom_point() +
  geom_text(aes(label=ifelse(PTS>24,as.character(Name),'')),hjust=0,vjust=0)

chart with conditional labels

关于r - geom_point 中的标签点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15624656/

相关文章:

r - lapply in list - 将行名设置为 NULL

r - 为什么 foreach 返回列表的列表

r - as.factor 级别为 0、1 而不是 1、2

r - 使用 gghighlight 时为多个 geom_hlines 创建图例

r - 如何将箱线图稍微向左或向右移动其原始位置?

r - 如何通过 R 中的 x 值缩放直方图上的 y 轴?

matlab - 使用堆叠条形图获得正确的图例

python - 使用匀称多边形进行映射

Matlab:当我放大 plotyy 图时,yTicks 不会自动更新

r - 在不规则网格上绘制气候数据的正确方法