2011-05-22 30 views
26

में बार के बीच स्थान जोड़ना प्रिय सभी, मैं ggplot2 में बार के बीच रिक्त स्थान जोड़ना चाहता हूं। यह पृष्ठ एक समाधान प्रदान करता है: http://www.streamreader.org/stats/questions/6204/how-to-increase-the-space-between-the-bars-in-a-bar-plot-in-ggplot2। एक्स-अक्ष समूहकरण के लिए कारक स्तर का उपयोग करने के बजाय, हालांकि, यह समाधान बार-बार मैन्युअल रूप से रखने के लिए एक संख्यात्मक अनुक्रम, x.seq बनाता है और फिर चौड़ाई() तर्क का उपयोग करके उन्हें स्केल करता है। चौड़ाई() काम नहीं करती है, हालांकि, उदाहरण के लिए, उदाहरण के रूप में, एक्स-अक्ष के लिए कारक स्तर समूह का उपयोग करता हूं।ggplot2

library(ggplot2) 

Treatment <- rep(c('T','C'),each=2) 
Gender <- rep(c('M','F'),2) 
Response <- sample(1:100,4) 
df <- data.frame(Treatment, Gender, Response) 

hist <- ggplot(df, aes(x=Gender, y=Response, fill=Treatment, stat="identity")) 
hist + geom_bar(position = "dodge") + scale_y_continuous(limits = c(0, 
    100), name = "") 

क्या किसी को पता है कि लिंक किए गए उदाहरण के समान प्रभाव कैसे प्राप्त करें, लेकिन कारक स्तर समूह का उपयोग करते समय?

चीयर्स,

हारून

+1

Facetting की उपयोगिता है '+ facet_grid (~ उपचार)' '' –

उत्तर

65

आप यही चाहते है?

hist + geom_bar(width=0.4, position = position_dodge(width=0.5)) 
  • widthgeom_bar में बार की चौड़ाई निर्धारित करता है।
  • widthposition_dodge में प्रत्येक बार की स्थिति निर्धारित करता है।

शायद आप थोड़ी देर के लिए उनके साथ खेलने के बाद आसानी से अपने व्यवहार को समझ सकते हैं।

enter image description here

भी ध्यान रखने की
+4

geom_histogram में width'() 'आधुनिक ggplot2 (> = 2.1.0) में मान्य नहीं है। – krlmlr

+1

क्या होगा यदि मैं बार-बार बार-बार समूह को रखना चाहता हूं (उदा। यहां 'सी' और 'टी' बार) लेकिन समूह ('एम' और 'एफ' के बीच अंतर को बदलना चाहते हैं)? – user5359531

 संबंधित मुद्दे