2016-10-05 13 views
12

का अर्थ मैं आर के लिए नया हूं, और वर्तमान में r4ds.had.co.nz के खंड 3.7 पर geom_bar सीख रहा हूं। तबआर - ggplot geom_bar: एईएस (समूह = 1)

library(ggplot2) 
ggplot(data = diamonds) + geom_bar(mapping = aes(x = cut, y = ..prop.., group = 1)) 

मैं इस साजिश है: मैं इस तरह के कोड चलाने click here

बिंदु है, अगर मैं बाहर निकालने के "समूह = 1" हिस्सा:

library(ggplot2) 
ggplot(data = diamonds) + geom_bar(mapping = aes(x = cut, y = ..prop..)) 

साजिश गलत होगा, like this

लेकिन यदि मैं समूह = 1 या समूह = "x" द्वारा समूह = 1 को प्रतिस्थापित करता हूं, तो साजिश अभी भी सही दिखती है। तो मैं यहां समूह = 1 का अर्थ समझ नहीं पा रहा हूं और इसका उपयोग कैसे करें।

उत्तर

23

group="whatever" डिफ़ॉल्ट व्यवहार को ओवरराइड करने के लिए एक "डमी" समूह है, जो (यहां) cut द्वारा समूहित करना है और सामान्य रूप से एक्स चर द्वारा समूह करना है। geom_bar के लिए डिफ़ॉल्ट x चर के प्रत्येक स्तर में पंक्तियों की संख्या को अलग-अलग गिनने के लिए x चर द्वारा समूह करना है। उदाहरण के लिए, यहाँ, डिफ़ॉल्ट geom_bar के लिए किया जाएगा के साथ पंक्तियों की संख्या वापस जाने के लिए cut बराबर करने के लिए "उचित", "अच्छी", आदि

हालांकि, अगर हम अनुपात चाहते हैं, तो हम के सभी स्तरों पर विचार करने की जरूरत है cut एक साथ। दूसरी साजिश में, डेटा को पहले cut द्वारा समूहीकृत किया जाता है, इसलिए प्रत्येक स्तर cut को अलग से माना जाता है। मेले में मेला का अनुपात 100% है, जैसा कि अच्छे में अच्छा अनुपात है, आदि group=1 (या group="x", आदि) इससे रोकता है, ताकि प्रत्येक स्तर के कट का अनुपात कट के सभी स्तरों के सापेक्ष होगा।

+0

आपको बहुत बहुत धन्यवाद। आपकी व्याख्या समझना बहुत आसान है। मैं इस पर गहराई से खोदूँगा क्योंकि मुझे उस दिन की बाधा से मुक्त किया गया है जिसने मुझे पूरे दिन परेशान किया है। (मैं ऊपर उठता हूं लेकिन यह नहीं दिखाता है, क्यों नहीं पता क्यों) – Novembrain