如何从单独的数据框创建构面板?

时间:2015-10-12 17:01:33

标签: r ggplot2

我有6个数据帧,如下所示,只是在" count"值。数据帧命名为a1,a2,a3,a4,a5,a6。 a1如下。

year count
1981 2
1982 8
1983 5
1984 6
1985 6
1986 4
1987 2
1988 2
1989 6
1990 5

我想制作一个6面板图,就像下面的那个

1. Panel names as a1,a2,a3,a4,a5,a6.
2. x-axis is year for each dataframe
3. y-axis is count for each dataframe

如果我有一个数据帧(Melt + Faced_Grid),我知道如何做到这一点。但是,当数据在6个不同的数据帧中时,如何在ggplott2中执行相同的操作。

enter image description here

1 个答案:

答案 0 :(得分:2)

+ (NSData *)doSha256:(NSData *)dataIn {
    NSMutableData *macOut = [NSMutableData dataWithLength:CC_SHA256_DIGEST_LENGTH];

    CC_SHA256( dataIn.bytes, dataIn.length, macOut.mutableBytes);

    return macOut;
}

您可以使用function f_sqlConnect($user, $pass, $db) { $link = mysqli_connect('127.0.0.1', $user, $pass); if (!$link) { die('Could not connect: ' . mysql_error()); } $db_selected = mysqli_select_db($db, $link); if (!$db_selected) { die('Can\'t use ' . $db . ': ' . mysql_error()); } } 为每个数据集添加set.seed(1001) a1 <- data.frame(year=2000:2009,count=sample(1:20,size=10,replace=TRUE)) a2 <- data.frame(year=2000:2009,count=sample(1:20,size=10,replace=TRUE)) dList <- setNames(list(a1,a2),paste0("a",1:2)) 列,但lapply()会提供快捷方式:

frame

或者你可以使用plyr::ldply,正如@Axeman在上面的评论中指出的那样:

library("plyr")
dAll <- ldply(dList,identity,.id="frame")

现在dplyr::bind_rows

很容易
library("dplyr")
dAll <- bind_rows(a1,a2,.id="frame")