2017-01-19 7 views
0

ggplot2를 사용하여 그러한 플롯을 생성 할 수 있지만 더 큰 상자가 x의 전체 범위를 다루지 않아 사람이 첫 번째 및 마지막 데이터 세트를 제외한다고 해석하므로 다소 혼란 스럽습니다. geom_boxplot은 aes(group=1)과 함께 사용하면 width= 인수에 응답하지 않습니다. 예가 아래에 나와 있습니다. boxplot 위에 이산 된 x 축을 가로 질러 더 큰 boxplot을 오버레이하는 방법은 무엇입니까?

library(ggplot2) 
p <- ggplot(mpg, aes(class, hwy)) 
p +geom_boxplot()+geom_boxplot(aes(group=1),width=0.1,col="red",fill=NA) 

enter image description here

나는 또한 ggplot2 github repository에 문제를 열었습니다.

답변

1

사용 그룹이없는 대신 숫자 x 값 :

nlevels <- length(unique(mpg$class)) 

ggplot(mpg, aes(class, hwy)) 
    geom_boxplot()+ 
    geom_boxplot(aes(x = median(1:nlevels)), width = nlevels, col = "red", fill = NA) 

enter image description here

+1

내가 너비를 조정하는 ggplot 뒤에 데이터를 편집 생각했다, 매우 깨끗하고 쉬운 솔루션 주셔서 감사하지만하지 않았다 성공. – Zhenglei