如何在ggplot2中保留x轴刻度范围的同时移除负数值标签
解决ggplot双x轴底部原始值轴负刻度问题
我制作了一个带有双x轴的ggplot图表:顶部为z-score轴(范围-4至4),底部为原始值轴(范围约0至3)。但原始值不可能小于0,底部轴上的负数值会干扰图表阅读,我希望移除这些负数值。
我记得一个实用技巧:创建不含实际数据的辅助图表,通过数据框设置xlim()来限定轴的显示范围,再通过patchwork将辅助轴图表和主图表组合起来。以下是辅助图表的代码:
# 数据仅用于占位,无实际意义 full_range <- data.frame(col_01 = c(0, 1)) # 绘制辅助的原始值轴 value_axis <- ggplot(data = full_range, aes(x = col_01, y = 0)) + xlim(0, 3) + # 替换为原始值的实际范围,即可过滤负刻度 theme(panel.background = element_blank(), axis.ticks = element_blank(), axis.line.x = element_line(), axis.text.y = element_blank(), axis.text.x = element_text(size = 20), aspect.ratio = 1e-8, plot.margin = unit(c(0, 0, 0, 0), "cm")) + ylab(element_blank()) + xlab(element_blank()) value_axis
内容的提问来源于stack exchange,提问作者seansteele
相关产品推荐
相关产品推荐

