2013-01-03 9 views
14

ggplot में geom_bar और geom_histogram के बीच क्या अंतर (यदि कोई है) क्या है? वे एक ही साजिश का उत्पादन करते हैं और समान पैरामीटर लेते हैं।ggplot geom_bar बनाम geom_histogram

+4

यदि आप पर लग रहा है? Geom_histogram आप पाएंगे कि "geom_histogram एक उपनाम है geom_bar प्लस stat_bin " –

+0

गणितज्ञ के रूप में बोलते हुए :-), एक हिस्टोग्राम बार चार्ट से अलग होता है, भले ही नामों को अंतःस्थापित किया जाता है। विकिपीडिया से उद्धरण, "एक हिस्टोग्राम में अंतराल में अवलोकनों की आवृत्ति के बराबर एक क्षेत्र के साथ असतत अंतराल (डिब्बे) पर बने आसन्न आयताकारों के रूप में दिखाए गए सारणीय आवृत्तियों होते हैं। आयताकार की ऊंचाई आवृत्ति के बराबर होती है अंतराल की घनत्व, यानी, अंतराल की चौड़ाई से विभाजित आवृत्ति। हिस्टोग्राम का कुल क्षेत्र डेटा की संख्या के बराबर है।"एक बार साजिश में ऐसे क्षेत्र प्रतिबंध नहीं हैं –

+0

धन्यवाद। हालांकि ऐसा लगता है कि geom_bar() के पास एक stat_bin() भी लागू है, क्योंकि आप stat_bin चर जैसे ..count .. और ..density तक पहुंच प्राप्त कर सकते हैं .. – jamborta

उत्तर

11
  • बार चार्ट स्पष्ट डेटा की दृश्य प्रस्तुति प्रदान करते हैं। उदाहरण:
    • लाल, काले और भूरे बाल
    • geom_barhelp file पर देखो के साथ लोगों की संख्या। उदाहरण सभी मायने रखता है।
    • विकिपीडिया page
  • Histograms interval (आमतौर पर अंकीय) डेटा के घनत्व प्लॉट करने के लिए उपयोग किया जाता है। उदाहरण,
    • उम्र और ऊंचाई
    • geom_histhelp file का वितरण। उदाहरण मूवी रेटिंग का वितरण कर रहे हैं।

ggplot2

में थोड़ा और अधिक जांच कर के बाद, मैं ggplot2 में लगता है कि geom_bar और geom_histogram बीच कोई अंतर नहीं है। डॉक्स से:

geom_histogram(mapping = NULL, data = NULL, stat = "bin", 
    position = "stack", ...) 
geom_bar(mapping = NULL, data = NULL, stat = "bin", 
    position = "stack", ...) 

मुझे लगता है कि geom_histogram डॉक्स में यह कहा गया है:

geom_histogram geom_bar प्लस stat_bin के लिए एक उपनाम है

लेकिन ईमानदारी से, मैं नहीं कर रहा हूँ वास्तव में यकीन है कि इसका क्या अर्थ है, क्योंकि ggplot2 की मेरी समझ यह है कि stat_bin और geom_bar दोनों परतें हैं (थोड़ा अलग जोर के साथ)।

+0

मुझे लगता है कि यह ggplot (हीरे, एईएस (गहराई)) + geom_histogram (एईएस (वाई = .. घनत्व ..)) और ggplot (हीरे, एईएस (गहराई)) + geom_bar (एईएस) के रूप में सटीक रूप से ggplot में प्रतिनिधित्व नहीं किया गया है (वाई = .. घनत्व ..)) एक ही साजिश में परिणाम (जो एक हिस्टोग्राम है) – jamborta

+0

घनत्व भूखंड हिस्टोग्राम नहीं हैं। घनत्व भूखंड प्रतिशत नहीं हैं। घनत्व भूखंड घनत्व भूखंड हैं। सीएफ http://stackoverflow.com/questions/17655648/कैसे-कर-मैं-साजिश-सापेक्ष-अनुपात-दो-समूहों-का उपयोग-भरने-सौंदर्य-अधिक उद्धरणों के लिए। – russellpierce

3

डिफ़ॉल्ट व्यवहार geom_bar और geom_histogram दोनों से समान है। ऐसा इसलिए है क्योंकि (और @csgillespie ने उल्लेख किया है), जब आप geom_histogarm (समझने योग्य) कहते हैं, तो एक अंतर्निहित stat_bin है, और यह भी geom_bar (तर्कसंगत व्यवहार आईएमओ) पर लागू डिफ़ॉल्ट आंकड़े रूपांतरण है। यही कारण है कि जब आप डेटा को प्लॉट करना चाहते हैं तो आपको stat='identity' निर्दिष्ट करने की आवश्यकता है।

stat='bin' या stat_bin() एक सांख्यिकीय परिवर्तन है जो आपके लिए ggplot करता है। यह आप आउटपुट के रूप में चर दो बिंदुओं (..count.. और ..density.. से घिरा प्रदान करता है। आप stat='bin' निर्दिष्ट नहीं करते हैं तो आप उन चर नहीं मिलेगा।