You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在ggplot2绘制的柱状图中移除指定的两个标签值

解决方案

你可以直接在geom_text()的标签映射中加入条件判断,精准过滤要隐藏的两个数值,无需调整数据集结构,也不会影响柱子的正常渲染:
将原geom_text代码中的label = bar*310替换为条件判断逻辑:label = ifelse(round(bar*310) %in% c(1, 130), "", as.character(round(bar*310))),即可把1和130两个标签替换为空,实现隐藏效果,加入round是为了避免浮点计算误差导致匹配失效。


修改后的完整代码:

ggplot() +
  geom_bar(data=data.bw, aes(x = num, y = bar),position = position_dodge(),stat = 'identity', width = 0.75,fill = "#D0D3D4", alpha=0.5) + 
  # 仅修改此处的label映射逻辑
  geom_text(data=data.bw, aes(x= num, y = bar,label = ifelse(round(bar*310) %in% c(1,130), "", round(bar*310))), vjust = -0.2, size=4.5) +
  scale_y_continuous(
    #minor_breaks = seq(0, 1, by = 50),
    breaks = seq(0, 1), limits = c(0, 1),
    expand = expansion(mult = c(0, 0)),
    #guide = "axis_minor" 
  ) +
  scale_x_continuous(
    #minor_breaks = seq(0, 25, by = 5),
    #breaks = seq(0, 25, by = 2), limits = c(0, 25),
    expand = expansion(mult = c(0, 0)),
    #guide = "axis_minor"
  ) +
  guides(x.sec = "axis_minor", y.sec = "axis_minor") +
  scale_fill_manual(values = alpha(c("red"), .3)) +
  ylab("Probability") +
  xlab("Number") +
  theme_bw() +
  guides(color = guide_legend(override.aes = list(shape = c(9,8)))) +
  theme(
    panel.border = element_rect(colour = "black", fill=NA, size=1),
    plot.background = element_blank(),
    panel.grid.major = element_blank(),
    panel.grid.minor = element_blank(),
    axis.text.x.top = element_blank(),
    axis.text.y.right = element_blank(),
    axis.text.x = element_text(color = "grey20", size = 12, hjust = .5, vjust = .5, face = "plain"),
    axis.text.y = element_text(color = "grey20", size = 12, hjust = .5, vjust = 0.2, face = "plain"),  
    axis.title.x = element_text(color = "grey20", size = 14, hjust = .5, vjust = 0, face = "plain"),
    axis.title.y = element_text(color = "grey20", size = 16, hjust = .5, vjust = .5, face = "plain"),
    plot.margin = margin(20, 3, 10, 3),
    legend.title = element_blank(),
    legend.text=element_text(size=12)
  )

效果展示

  • 调整前:当前带多余标签的柱状图
  • 调整后:移除指定标签后的目标柱状图

内容的提问来源于stack exchange,提问作者neuron

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 00:24:04