【发布时间】:2017-09-03 00:37:33
【问题描述】:
我正在尝试在没有可怕的 3d 条形图和不清楚的 x 轴的情况下重新创建这个图(这些是不同的时间点,很难分辨它们何时是)。
(from Science 291, no. 5513 (2001): 2606–8, otherwise a good paper.)
我的第一直觉是做一些类似于他们所做的事情,使用 2d 条形图和不同的 x 轴标签,使用闪避的条形表示基因型,然后堆叠条形在前面的条形上得到黑白分割,但是这里还有几个很好的问题表明你不能这样做。
我的下一个方法是使用 faceting(下面的代码),它工作得相当好,但我很想看到一个更好的方法来做到这一点。有没有办法堆叠一些变量并控制其他变量?或者只是一个更好的方法来做到这一点?
编辑:澄清一下,我认为显示堆叠条的总数很重要(在这种情况下,m 和 n,最初是黑色和白色),因为这代表一个测量的数量,然后拆分是一个单独的测量。
library(tidyverse)
library(cowplot)
data = tribble(
~Timepoint, ~`Ancestral genotype`, ~Mutator, ~`Mean % of auxotrophs`,
100, 'mutS-', 'o', 10.5,
150, 'mutS-', 'o', 16,
220, 'mutS-', 'o', NA,
300, 'mutS-', 'o', 24.5,
100, 'mutS+', 'n', 1,
150, 'mutS+', 'n', NA,
220, 'mutS+', 'n', 1,
300, 'mutS+', 'n', 1,
100, 'mutS+', 'm', 0,
150, 'mutS+', 'm', NA,
220, 'mutS+', 'm', 2,
300, 'mutS+', 'm', 5
)
data <- data %>% mutate(Timepoint = as.character(Timepoint))
data %>% ggplot(aes(x = Timepoint, y = `Mean % of auxotrophs`)) +
geom_col(aes(fill = Mutator), position = 'stack') + facet_grid(~`Ancestral genotype` ) +
guides(fill=FALSE)
【问题讨论】: