2012-02-22 1 views
2

사용 가능한 R 패키지에 4 가지 변수로 데이터를 시각화하는 가장 좋은 방법을 권해 주실 수 있습니까?다 변수 그래픽 권장 사항 R

즉, 두 개의 범주 형 변수 (모집단 (12) 및 문자 (50))와 두 개의 연속 변수 (100 개 개체의 각 문자 길이 측정 값의 평균 및 변동 계수 (매트릭스의 행))가 있습니다. 기본적으로 12x50x100x100 크기의 그래프입니다.

제안 사항?

+0

표시하고 표시 하시겠습니까? – chl

+0

Cloudplot (http://stackoverflow.com/q/6774777/636656)에서 입체감을 얻습니다. 네 번째 부분 집합 만하면됩니다. 그래서 12 개의 구름 플롯. 결과를 해석하는 것이 쉽지는 않을지라도. –

+0

당신이 가지고 있다고 생각하는 데이터가 실제로는 없다고 생각됩니다. 12 개의 팝과 50 개의 문자 각각에 대해 평균과 SD가 모두있는 경우 실제로는 "연속적인 데이터"가 아니라 오히려 해당 데이터의 요약입니다. –

답변

2

전체 인구로 시작하여 점진적으로 여러 그룹으로 데이터를 슬라이싱하여 변수를 먼저 하나씩 그리고 나서 함께 플롯합니다. .

# Sample data 
n1 <- 6 # Was: 12 
n2 <- 5 # Was: 50 
n3 <- 10 # Was: 100 
d1 <- data.frame(
    population = rep(LETTERS[1:n1], each=n2*n3), 
    character = rep(1:n2, each=n3, times=12), 
    id = 1:(n1*n2*n3), 
    mean = rnorm(n1*n2*n3), 
    var = rchisq(n1*n2*n3, df=5) 
) 
# Not used, but often useful with ggplot2 
library(reshape2) 
d2 <- melt(d1, id.vars=c("population","character","id")) 

# Look at the first variable 
library(lattice) 
densityplot(~ mean, data=d1) 
densityplot(~ mean, groups=population, data=d1) 
densityplot(~ mean | population, groups=character, data=d1) 

# Look at the second variable 
densityplot(~ var, data=d1) 
densityplot(~ var, groups=population, data=d1) 
densityplot(~ var | population, groups=character, data=d1) 

# Look at both variables 
xyplot(mean ~ var, data=d1) 
xyplot(mean ~ var, groups=population, data=d1) 
xyplot(mean ~ var | population, groups=character, data=d1) 

# The plots may be more readable with lines rather than points 
xyplot( 
    mean ~ var | population, groups = character, 
    data = d1, 
    panel = panel.superpose, panel.groups = panel.loess 
) 
+0

와우 (Wow), 내가 여기에서 다룬 가장 상세한 해답 중 하나. 좋은 일과 나는 이것 이후 반드시 격자를 고려할 것이다. –

0

데이터의 한 차원 또는 다른 데이터를 따라 일련의 "조각"을 그려야 할 경우 lattice을 고려하십시오. http://addictedtor.free.fr/graphiques/으로 넘기고 다른 사람이 원하는 그래프를 만들기 위해 코드를 작성했는지 확인하십시오.

+0

래티스는 여러 개의 플롯 창을 쉽게 만들 수 있기 때문에 핵심 요소입니다. 나는 그것을 하나의 그래프에 모두 담는 아이디어가 희미 해지기 시작하고 아마 거부 될 것이라고 생각한다. –