使用gghighlight同时高亮n_of_fraction=4和6的柱形失败求助
问题解决:同时高亮n_of_fraction为4和6的柱形
- 高亮规则写法错误:
gghighlight()中分开写n_of_fraction == 4, n_of_fraction == 6会被识别为两个独立规则,而非同时匹配两个值。需改用%in%运算符匹配多个目标值。 - 语法结构错误:
scale_y_continuous()被错误嵌套在labs()内部,需移至ggplot图层链的独立位置。
修正后的完整代码:
myfraction |> ggplot(aes(pt, n_of_fraction)) + geom_col(fill = "red") + gghighlight(n_of_fraction %in% c(4, 6)) + # 匹配多个值的正确写法 coord_flip() + scale_y_continuous(expand = c(0, 0)) + # 移出labs,作为独立图层 theme_bw() + labs( y = "# Fraction", x = "pt" ) + theme( plot.title = element_markdown(size = 10, face = "bold") # axis.text.y = element_blank(), # 按需启用注释内容 # axis.ticks.y = element_blank() )
修改说明:
- 使用
n_of_fraction %in% c(4, 6)让gghighlight同时选中所有值为4或6的柱形,实现批量高亮。 - 调整
scale_y_continuous()的位置,修复语法错误,确保代码正常执行。
内容的提问来源于stack exchange,提问作者Omer Ali
相关产品推荐
相关产品推荐

