1

我有一个超过 3000 个条形图的堆积条形图。当我在 RStudio 中显示它时,图中应该包含值的周期性间隙。我还收到警告消息:“position_stack 需要恒定宽度:输出可能不正确”。当我使用 R 开发页面(控制多个设备)中的 x11() 并将绘图部分拉伸到 2 个监视器时,我验证了这些值是否存在。

我知道这是一个大型数据集,并且条形图在如此大的尺寸下描述性较差。我打算使用较小规模的堆积条形图作为每个基因突变的分类统计,并希望为大文件提供可扩展的版本。

这是进入堆积条形图的数据框的一个想法,根据 Mutation 着色:

Gene    Mutation    value
ABC     MUT1        1
ZYX     MUT1        1
DEF     MUT1        0
ABC     MUT2        1
ZYX     MUT2        0
DEF     MUT2        0

作为临时修复,我为 geom_bar() 创建了两个选项。较大的宽度会产生新的警告:“position_stack 需要不重叠的 x 间隔”,但输出条形图不显示间隙。

barplot<- ggplot(bar.df2, aes(x = Gene, y = value, fill = as.character(Mutation)))+
  # For input file with very many genes, use the following:
  #geom_bar(stat = "identity", width = 1.5) + 

  # For input file with <= 150 genes, use the following:
  geom_bar(stat = "identity") +

  coord_flip() + 
  scale_fill_manual(breaks = mutvec, values = colvec2)+ 
  theme(axis.title.y = element_blank(), axis.text.y = element_blank(), 
        axis.ticks.y = element_blank(), plot.margin = unit(c(0.5, 0.5, 0.5, -0.5), "lines")) +
  xlim(rev(levels(bar.df2$Gene))) +
  guides(fill=FALSE)

# This then goes into ggplotGrob() and grid.arrange 
# with a heatmap which is the main plot

这个堆积条形图有没有更好的方法来小规模显示所有条形图?

4

0 回答 0