R

在R中的圖表上繪製多個條形圖[關閉]

  • August 10, 2011

我想在 R 中的一個圖表上繪製四個條形圖。我使用了以下代碼。在這裡,如何在圖表頂部保留圖例,特別是圖例應該在 2 到 3 個條形圖之間。我也嘗試過,par(mar=c(4.1,4.1,8.1,4.1)但沒有成功。而且,我還嘗試legend()在第二個barplot之後運行,但沒有用。圖例適用於所有四個條形圖。請幫助我。

   par(mfrow=c(1,4))
   barplot(t(A), beside=T, ylim=c(-100,100),..)
   barplot(t(B), beside=T, ylim=c(-100,100),..)
   barplot(t(C), beside=T, ylim=c(-100,100),..)
   barplot(t(D), beside=T, ylim=c(-100,100),..)
   legend(...)

Mike 博士的回答很好,但我想我會提供利用 和 的刻面(或格狀)特徵的解決ggplot2方案lattice。首先稍微準備一下數據:

mydata$id <- 1:nrow(mydata)
dat <- melt(mydata,id.vars = "id")

然後我們可以在中進行以下操作ggplot2

ggplot(dat,aes(x=factor(id), y = value)) + 
   facet_wrap(~variable) +
   geom_bar(aes(fill = factor(id)))

在此處輸入圖像描述

並使用lattice

barchart(~value|variable,group = factor(id),data=dat,
        key = simpleKey(text = as.character(1:5),
               rectangles = TRUE,points = FALSE,space = "right"))

在此處輸入圖像描述

引用自:https://stats.stackexchange.com/questions/14118

comments powered by Disqus