2011-05-10 2 views
19

정수 변수 (표본 크기)로 결정된 바 너비가있는 바 plot을 생성하려고합니다. "width = variableName"을 추가해도 작동하지 않는 것 같습니다. 이것을하기위한 확립 된 방법이 있습니까? 더미 데이터와 코드는 다음과 같습니다. 이 예제에서는 bar 너비가 변수 d의 함수가되기를 원합니다.ggplot2 barplot의 변수 폭 막대가

dat <- data.frame(a=c("A", "B", "C"), b=c(0.71, 0.94, 0.85), d=c(32, 99, 18)) 

ggplot(dat, aes(x=a, y=b, fill=a)) + 
geom_bar(colour="black", size=.3) + 
theme_bw() 

답변

28

은 어떻게 d 벡터를 스케일링 후 width= 사용에 대한 일정한 양만큼 말을?

ggplot(dat, aes(x=a, y=b, width=d/100)) + 
    geom_bar(aes(fill=a), stat="identity", position="identity") 

enter image description here

+0

@chi : 즉, 위대한 덕분에 많이. 나는 이미이 방법을 시도했지만 'stat'및 'position'인수가 없으면 막대 너비에 영향을 미치지 않았습니다. – Steve

+0

범례에 막대의 너비를 추가 할 수 있습니까? – fstevens

+0

감사합니다. 나는 위치 인수를 놓쳤다 :) –

관련 문제