首页 > 解决方案 > 我如何将多个单独的图表放在 r 中的一个 pdf 上

问题描述

我无法弄清楚如何将 6 个单独的条形图放在一个 pdf 上。例如,这是其中一个图(它们都非常相似):

    barplot(druhy, ylim = c(0,50), main = "Míváš často chuť na svíčkovou?", col = c("red", "blue", "green", "black", "yellow"))

   legend("topleft", legend = c("ano", "spíše ano", "nevím", "spíše ne", "ne"), fill = c("red", "black", "green", "yellow", "blue"))

以下是图表使用的值:

  print(druhy)

  ano\r\n        ne\r\n     nevím\r\n spíše ano\r\n  spíše ne\r\n 
        4             1             2             5             3 

我尝试使用此代码将它们放在一个 pdf 中,但它不起作用。我确信这段代码有问题,但我似乎无法找到确切的内容。

    pdf('plot.pdf')

  m <- rbind(c(1,2), c(3,4), c(5,6))
  layout(m)
  sapply(seq_along(sp),
   function(x) {
     dd <- sp[[x]]
     m <- t(`rownames<-`(as.matrix(dd[, -(1:2)]), dd[, 1]))
     bp <- barplot(m,ylim=c(0, 0.4),beside=TRUE,col=barcols)
     title(main=names(sp[x]))
     # abline(h=0)
   }
plot(NA,xlim=c(0,1),ylim=c(0,1),ann=FALSE,axes=FALSE)

有没有更好的方法或如何修复此代码,所以结果是一个带有六个并排条形图的 pdf?我是初学者,所以如果我的问题完全愚蠢,我深表歉意。

标签: rstatisticsbar-chartgplots

解决方案


必须使用 指示绘图结束dev.off()。这是一个简单的工作示例:

pdf("myOut.pdf")
for (i in 1:10){
  barplot(iris$Sepal.Length)
}
dev.off()

推荐阅读