在同一面板中绘制多个直方图

时间:2013-02-21 15:27:58

标签: r lattice

我试图在同一个面板中的数据框中绘制一些变量的多个直方图。以下是一些代码:

 library(lattice) 
 dd <- data.frame(gp = factor(rep(paste('Group', 1:6, sep = ''), each = 
 100)), x = rnorm(600)) 
 histogram( ~ x | gp, data = dd) 
 histogram( ~ x | gp, data = dd, as.table = TRUE) 

这是将数据x放入组1到6中。在给定的数据帧中,我们已经有特定类别的数字。例如,假设我想在同一个面板中绘制高度,重量和平均血压(日期框架中的变量)的直方图。如何在不必形成新数据集和组1到3的情况下执行此操作?

1 个答案:

答案 0 :(得分:8)

无需在此处重塑数据。

 histogram( ~ height +age +weight ,data = dd) 

然后您可以使用layout来更改面板的显示顺序。例如:

 histogram( ~ height +age +weight ,layout=c(1,3),data = dd) 

这将在3个面板中产生3个直方图。

修改

添加标题,您可以使用main

histogram( ~ height +age +weight ,layout=c(1,3),data = dd,
            main='PLEASE READ LATTICE HELP')    

旁注:设置参数在不同的晶格函数之间共享。例如,xlab的输入:See xyplot。当你去xyplot帮助时,你可以阅读:

main:
Typically a character string or expression describing the main 
       title to be placed on top of each page. Defaults to NULL