2011-08-11 7 views
13

अब तक, मैं उदाहरण hereएक निश्चित मूल्य से बदलें हिस्टोग्राम बार रंग अधिक से अधिक

test <- rnorm(100); 
h <- hist(test); 
b <- cut(1, h$breaks); 
clr <- rep("grey", length(h$counts)); 
clr[b] <- "red"; 
plot(h, col=clr); 

मैं का रंग बदलने के सक्षम होना चाहते हैं निम्नलिखित रंग हिस्टोग्राम में एक भी बार बदलने के लिए प्रबंधित किया है हिस्टोग्राम डिब्बे जो एक निश्चित एक्स-अक्ष मान से ऊपर हैं - उदाहरण के लिए उदाहरण में वितरण समारोह में 1 से ऊपर हैं। मुझे परेशानी होने का कारण यह है कि मैं cut() रिटर्न के कारक को बिल्कुल समझ नहीं पा रहा हूं।

उत्तर

8

मूल रूप से आप test पर cut एस पर लॉजिकल चयनकर्ता चाहते हैं।

> bks <- cut(test,10) 

स्तरों प्रकार चरित्र के होते हैं::

यहाँ अपने कटौती वस्तु दिखता है की तरह है

स्तर (बीकेएस) 1 "(-2.53, -2.01]" "(- 2.01, -1.5] "" (-1.5, -0.978] "" (-0.978, -0.459] " [5]" (-0.459,0.0596] "" (0.0596,0.578] "" (0.578,1.1] " "(1.1,1.62]"
[9] "(1.62,2.13]" "(2.13,2.65]"

डेटा संख्यात्मक प्रकार का है:

> head(as.numeric(bks)) 
[1] 5 6 6 6 3 5 

यहाँ हाथ से एक समाधान है बजाय ggplot2 का उपयोग कर कटौती करने और इसके आगे:

test <- rnorm(100) 
dat <- data.frame(x=test, above=test>1) 
library(ggplot2) 
qplot(x,data=dat,geom="histogram",fill=above) 

ggplot2 histo

+0

+1 यह एक प्यारा ग्राफ है! क्या यह परिवर्तनीय चौड़ाई डिब्बे के लिए भी काम करता है? जैसे 'हिस्ट (टेस्ट, ब्रेक = सी (-3, -2, -1,0,0.5,1,1.5,2,2.5,3) ' –

+0

@AssadEbrahim धन्यवाद का उपयोग करते समय। ggplot2 purdy है। चर बनाने में सक्षम होना चाहिए -विड्थ डिब्बे लेकिन आपको यह जानने के लिए अपने स्वयं के प्रश्न की आवश्यकता हो सकती है कि कैसे :-) –

+0

पर्याप्त मेला :) (purdy?) –

7

अपने रंग वेक्टर बदलें , clr, ताकि जब भी बार 1 से अधिक हो और ग्रे अन्यथा लाल हो, तो यह लाल दिखाई देता है।

clr <- ifelse(h$breaks < 1, "grey", "red")[-length(h$breaks)] 

फिर पहले की तरह प्लॉट करें।

+1

यदि आपके पास समय है, तो यह ggplot सीखने और इस पर gsk के जवाब को prefering लायक है। आधार 'हिस्ट' समारोह सुंदर बनाने के लिए एक दर्द है। –

+0

करेगा। यद्यपि मुझे हिस्ट के लिए सही दिशा में इंगित करने के लिए धन्यवाद। – MattLBeck

+0

ggplot धीरे-धीरे प्रस्तुत करता है, और इसमें खराब दस्तावेज़ीकरण (जहां geom = "हिस्टोग्राम" दस्तावेज के लिए विशिष्ट विकल्प हैं?) – user1244215

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