R ggplot2 Facet包装在每个图中有四个箱图

时间:2015-11-14 01:46:48

标签: r ggplot2 facet-wrap

我有一个名为dataw的数据框,我试图将其绘制成双面包装的箱形图。

dataw <- structure(list(base = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 
2L, 2L, 2L, 2L, 2L, 2L, 2L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 4L, 4L, 
4L, 4L, 4L, 4L, 4L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 
2L, 2L, 2L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 4L, 4L, 4L, 4L, 4L, 4L, 
4L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 3L, 
3L, 3L, 3L, 3L, 3L, 3L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 3L, 3L, 3L, 3L, 3L, 
3L, 3L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
2L, 2L, 2L, 2L, 2L, 2L, 2L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 4L, 4L, 
4L, 4L, 4L, 4L, 4L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 
2L, 2L, 2L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 4L, 4L, 4L, 4L, 4L, 4L, 
4L), .Label = c("A", "C", "G", "T"), class = "factor"), pos = c(1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 
2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 
2L, 2L, 2L, 2L, 2L, 2L, 2L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 
3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 
3L, 3L, 3L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 
4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 5L, 
5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 
5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 6L, 6L, 6L, 6L, 6L, 
6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 
6L, 6L, 6L, 6L, 6L, 6L, 6L), values = c(13, 22, 16, 1, 1.709, 
2.121, 2.061, 1, 5, 6, 1, 0.856, 1.116, 1.207, 76, 45, 5, 15, 
8.558, 5.44, 1.147, 10, 7, 40, 5, 1.547, 1.174, 4.777, 7, 0, 
1, 8, 1.322, 0.728, 0.83, 4, 2, 0, 0, 1.098, 0.96, 0.63, 13, 
22, 16, 1, 1.709, 2.121, 2.061, 3, 6, 7, 11, 0.952, 1.474, 1.45, 
13, 22, 16, 1, 1.709, 2.121, 2.061, 3, 8, 15, 2, 1.014, 1.583, 
2.289, 10, 3, 8, 2, 1.504, 1.03, 1.244, 4, 1, 0, 1, 1.066, 0.862, 
0.689, 2, 0, 0, 1, 0.919, 0.723, 0.479, 7, 8, 0, 0, 1.299, 1.236, 
0.779, 13, 22, 16, 1, 1.709, 2.121, 2.061, 45, 38, 41, 1, 2.817, 
2.264, 2.398, 3, 0, 1, 14, 0.973, 0.641, 0.846, 13, 22, 16, 1, 
1.709, 2.121, 2.061, 7, 0, 0, 1, 1.37, 0.436, 0.706, 0, 5, 5, 
1, 0.597, 1.113, 1.079, 3, 1, 4, 8, 0.992, 0.84, 1.07, 17, 7, 
18, 1, 2.4, 1.315, 1.948, 21, 8, 50, 12, 2.412, 1.254, 3.857, 
13, 22, 16, 1, 1.709, 2.121, 2.061), type = structure(c(2L, 2L, 
2L, 2L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 
1L, 1L, 1L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 1L, 1L, 
1L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 2L, 
2L, 2L, 2L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 2L, 2L, 2L, 
2L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 1L, 
1L, 1L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 
2L, 2L, 2L, 2L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 2L, 2L, 
2L, 2L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 
1L, 1L, 1L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 1L, 1L, 
1L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 1L, 1L, 1L, 2L, 
2L, 2L, 2L, 1L, 1L, 1L), .Label = c("ipdRatio", "score"), class = "factor")), .Names = c("base", 
"pos", "values", "type"), row.names = c("1", "2", "3", "3942", 
"3943", "3944", "3945", "11", "21", "31", "63", "64", "65", "66", 
"12", "22", "32", "2953", "2954", "2955", "2956", "13", "23", 
"33", "2461", "2462", "2463", "2464", "14", "24", "34", "7493", 
"7494", "7495", "7496", "111", "212", "311", "4874", "4875", 
"4876", "4877", "121", "221", "321", "9356", "9357", "9358", 
"9359", "131", "231", "331", "9221", "9222", "9223", "9224", 
"15", "25", "35", "93561", "93571", "93581", "93591", "112", 
"213", "312", "1579", "1580", "1581", "1582", "122", "222", "322", 
"1782", "1783", "1784", "1785", "132", "232", "332", "3398", 
"3399", "3400", "3401", "16", "26", "36", "2257", "2258", "2259", 
"2260", "113", "214", "313", "1027", "1028", "1029", "1030", 
"123", "223", "323", "8654", "8655", "8656", "8657", "133", "233", 
"333", "702", "703", "704", "705", "17", "27", "37", "8123", 
"8124", "8125", "8126", "114", "215", "314", "93562", "93572", 
"93582", "93592", "124", "224", "324", "3700", "3701", "3702", 
"3703", "134", "234", "334", "8233", "8234", "8235", "8236", 
"18", "28", "38", "1542", "1543", "1544", "1545", "115", "216", 
"315", "533", "534", "535", "536", "125", "225", "325", "208", 
"209", "210", "211", "135", "235", "335", "93563", "93573", "93583", 
"93593"), class = "data.frame")

我正在密谋这样:

prettify <- theme(panel.background = element_rect(fill = NA,color="gray"), 
                      panel.grid.major.y = element_blank(),
                      panel.grid.major.x = element_line(size=.1, color="black",linetype="dotted"), 
                      panel.grid.minor.y = element_blank(),
                      panel.grid.minor.x = element_line(size=.1, color="black"),
                      legend.position="bottom")

    ggplot(dataw,aes(x = base, y = values, color = type, group = type)) + 
                 geom_boxplot() + 
                 facet_wrap(type ~ pos, scales="free", nrow = 2) + 
                 theme_gray() %+replace% prettify

但我一直在每个情节广场只得到一个箱图,事实上我想要每个广场有4个箱图:

enter image description here

有谁看到我在做错了什么?谢谢!

0 个答案:

没有答案