2014-11-13 20 views
6

Ggplot2 kullanarak yan yana kutular oluşturmak istediğim birkaç farklı farklı uzunluktaki vektörlerim var. Bu, Temel çizim sistemi ile yapılacak ileriye doğrudur. Bununla birlikte, ggplot2, giriş olarak tek bir veri çerçevesini alır; bu, değişen uzunluklardaki verilerden oluşturulması zor bir işlemdir.ggplot2 - Farklı Uzunluktaki Kaynaklardan Birden Fazla Kutulama

a <- rnorm(10) 
b <- rnorm(100) 
c <- rnorm(1000) 
boxplot(a, b, c) 

S: çeşitli boyutlarda verileri kullanılarak ggplot2 kullanarak kutudiyagramlar çizmek için doğru yolu nedir?

cevap

11

ggplot, ayrı sütunlar olarak kaydedilen gruplarla (a, b veya c gibi) düzenli uzun veri çerçeveleri kullanır. Örnekte, çok gibi 1110 sıra (10 + 1000 + 100) ve iki sütun (değer ve grup) ile bir veri çerçevesi yapabilir:

# Make individual data frames 
a <- data.frame(group = "a", value = rnorm(10)) 
b <- data.frame(group = "b", value = rnorm(100)) 
c <- data.frame(group = "c", value = rnorm(1000)) 

# Combine into one long data frame 
plot.data <- rbind(a, b, c) 

# group  value 
# 1  a 0.2322682 
# 2  a -0.9681992 
# ... 
# 101 b 0.3422354 
# 102 b 0.3495342 
# ... 
# 1001 c -0.6839231 
# 1002 c -1.4329843 

# Plot 
library(ggplot2) 
ggplot(plot.data, aes(x=group, y=value, fill=group)) + geom_boxplot() 

Example boxplot

İlgili konular