2015-06-13 12 views
7

Üzgünüm Bu soru için örnek bir kodum yok. Tek bilmek istediğim, veri çerçevemde farklı sütunları/değişkenleri temsil eden R içinde birden çok yan yana paket oluşturmanın mümkün olup olmadığıdır. Her bir kutucuk sadece tek bir değişkeni temsil ederdi - y ölçeğini bir dizi (0,6) olarak ayarlamak istiyorum.Aynı grafikte birden fazla kutuyu R'ye nasıl yerleştiririm?

Bu mümkün değilse, yalnızca tek bir değişken kullanarak bir kutu grafiği oluşturmak istiyorsam, ggplot2 panel seçeneği gibi bir şeyi nasıl kullanabilirim? Teşekkürler!

İdeal olarak, aşağıdaki görüntü gibi bir şey istiyorum ama ggplot2'de olduğu gibi faktör gruplaması yapmadan istiyorum. Yine, her bir kutu grafiği tamamen ayrı ve tek sütunlar temsil eder.

enter image description here

cevap

5

ggplot2 veri y ekseni üzerinde çizilen edilmesini gerektirir uzun biçime eğer reshape verilerinizi bu edilmektedir yapabilirsiniz sütunu.

enter image description here

ylim(0,6) setleri

set.seed(1) 
df <- data.frame(
    value = runif(810,0,6), 
    group = 1:9 
) 

df 

library(ggplot2) 
ggplot(df, aes(factor(group), value)) + geom_boxplot() + coord_cartesian(ylim = c(0,6) 
y ekseni veri sütunlarında iseniz, bunları alabilirsiniz

0 ile 6 olmak: İşte

bir örnektir melt numaralı telefonu kullanarak reshape2 veya gather'dan tidyr numaralı telefonu kullanabilirsiniz. (diğer yöntemler de mevcuttur).

+2

NOT: ggplot2 'ylim()' için, posta kutularının görüntülenmesi için alt kümeleri. 'coord_cartesian (ylim =)' yerine –

+1

@AaronKatch iyi yakalama (eğer punutu kullanırsanız) – jalapic

+0

Teşekkürler, @jalapic! Bu yüzden, öneriniz için tidyr ve ggplot2 kullanarak yaralarım: 'uzun <- topar (team1, değişken, değer, var1: var44) ggplot (uzun, aes (faktör (değişken), değer)) + geom_boxplot() + coord_cartesian (ylim = c (0,6)) ama bu garip görünümlü arsa ile yaralandı: http://tinypic.com/r/261z0qg/8. Bunun makul bir şekilde iyi görünmesi için çok fazla değişkene sahip olduğumu düşünüyorum; Bu durumda, yeniden boyutlandırmak için herhangi bir seçenek var mı, yoksa sadece panel plotlarından vazgeçmeli ve kullanmalı mıyım? Tekrar teşekkürler! – poeticpersimmon

5

Sen hepsi bir arada

## Some sample data 
dat <- data.frame(a=rnorm(100), b=rnorm(100), c=rnorm(100)) 

## Reshape data wide -> long 
library(reshape2) 
long <- melt(dat) 
plot(value ~ variable, data=long) 

enter image description here

+0

Teşekkürler, @LegalizeIt! Verilerimi uzun bir df: 'kitaplık (tidyr) uzun <- toplama (team1, değişken, değer, var1: var44) çizimine (değer ~ değişken, veri = uzun)' yeniden şekillendirmek için tidyr kullanarak yaralandım ama Bu garip görünümlü arsa: http://tinypic.com/r/2rn77no/8 ... 40+ araziye sahip olduğumdan beri birlikte sıkıştırmaya çalışıyorum, orijinal hedefim mi? Eğer öyleyse, panel parsellerine geçebilirim. – poeticpersimmon

İlgili konular