使用 ggplot2 在小中断处放置轴标签

Posted

技术标签:

【中文标题】使用 ggplot2 在小中断处放置轴标签【英文标题】:Placement of axis labels at minor breaks with ggplot2 【发布时间】:2010-12-06 00:16:52 【问题描述】:

我正在使用 ggplot2 对基因组数据进行一些绘图,所以基本格式是有一条染色体和一个沿它的位置。我将位置转换为连续比例,然后将断点放在染色体的边界:

scale_x_continuous("Genome Position", breaks = c(0, cumsum(chromosome_length)))

就实际绘图而言,这看起来很棒,但是标签随后被放置在染色体的开始和结束处。我希望它们沿着每条染色体居中,在默认情况下绘制小断裂的位置。

这可能吗?

【问题讨论】:

【参考方案1】:

这个怎么样?

breaks <- c(0, cumsum(chromosome_length))
scale_x_continuous("Genome Position", breaks = breaks + 0.5, labels = breaks)

【讨论】:

没那么多。除了 break + 0.5 不会将它们放在正确的位置这一事实之外,这只是移动主要的中断,而不是标记次要的中断,这是我更愿意做的。 好吧,您不能标记小中断,但您可以通过移动主要中断、调整主题和使用 geom_vline 轻松模拟效果。试试 ggplot2 邮件列表。 不可能标记次要刻度:这是合理的还是概念性的错误。乍一看,您似乎很想这样做,例如 Mayor=years minor=months 对某人来说似乎“显而易见”的事情是无限的——我只能实现和支持有限的数量 @hadley 不过,这将非常有用。 Plot.ly 已经添加了,我已经无法停止使用它了。

以上是关于使用 ggplot2 在小中断处放置轴标签的主要内容,如果未能解决你的问题,请参考以下文章

R语言ggplot2可视化:ggplot2中使用element_text函数设置轴标签文本粗体字体(bold text,使x轴和Y轴的标签文本都使用粗体字体)注意是轴标签而非轴标题

使用ggplot2更改R中的x轴刻度标签[重复]

在 R 中使用带有 facet_wrap 的 ggplot2 显示多个轴标签

R语言ggplot2可视化多行文本轴标签轴标签带下标轴标签数学公式实战

R语言使用ggplot2包的快速可视化函数qplot绘制密度图(主题轴标签设置)实战

ggplot2:x 和 y 轴带有黑色标签的经典绘图