R语言 在ggplot中显示几何点的值

ntjbwcob  于 2023-01-15  发布在  其他
关注(0)|答案(1)|浏览(201)

我试图做一个图表,显示每个点旁边的点本身的价值。
我当前的代码如下所示:

ggplot()+ 
    geom_point(data = datacombined, aes(x = datacombined$`Poulation group`, y = datacombined$`Percent of population in cicilian labor force`, color = datacombined$Location),size=4) +
    scale_color_manual(values = c("US" = "darkblue", "OH" = "red"))+
  ylim(0,100)+
  theme_bw()+
  ylab("Percentage of population in civilian labour force") + xlab("Population group")

这就给了我这样一幅图:

我想在图中的点旁边添加值,例如,左侧的红点应为67.7。我还想更改显示每个统计数据位置的一侧的标题。
我试着按描述制作情节,但不知道如何用值命名每个点。

fcy6dtqo

fcy6dtqo1#

您可以使用geom_text,并根据需要调整nudge_x。注意,您只需要在aes中放入不带引号的列名,而不是dataframe$column语法。

library(ggplot2)

ggplot(datacombined, aes(x = `Poulation group`, 
                         y = `Percent of population in cicilian labor force`)) + 
  geom_point(aes(color = Location), size = 4) +
  geom_text(aes(label = after_stat(y)), nudge_x = 0.1) +
  scale_color_manual(values = c(US = "darkblue", OH = "red")) +
  ylim(0, 100) +
  theme_bw()+
  ylab("Percentage of population in civilian labour force") + 
  xlab("Population group")

    • 所用数据(根据图表和代码推断,保留打字错误)**
datacombined <- data.frame(
  `Poulation group` = rep(c("Men", "Men and women, 18 to 19 years old", 
                             "Women"), each = 2),
  `Percent of population in cicilian labor force` = c(65, 67, 47, 54, 35, 55),
  Location = rep(c("OH", "US"), 3), check.names = FALSE)

创建于2023年1月12日,使用reprex v2.0.2

相关问题