2012-11-19 10 views
8

x- अक्ष के मूल्यों के लिए खोज रहे हैं हिस्टोग्राम में बार्स पर मान केंद्रित आर में सलाखों के केंद्र में साजिश रचीमें आर

होने मुद्दों इसे संभव बनाने के लिए एक रास्ता खोजने, कोड के नीचे है:

hist(sample_avg, breaks =7, ylim=c(0,2000), 
    main = 'Histogram of Sample Average for 1 Coin Flip', xlab= 'Sample Average') 

यह सिर्फ एक सिक्का फ्लिप के लिए है, इसलिए मेरे पास 6 संभावित मान हैं और प्रत्येक संबंधित बार के नीचे एक्स-अक्ष टिक अंकों के साथ 6 बाल्टी रखना चाहते हैं।

किसी भी मदद की बहुत सराहना की जाती है।

+4

आप प्रयोग करने पर विचार 'बजाय barplot' सकता है अलग परिणामों से निपटने पर। डिफ़ॉल्ट बारप्लॉट बार के नीचे एक्स-अक्ष लेबल भी केंद्रित करता है। – BenBarnes

उत्तर

0

जैसा कि आप उम्मीद कर रहे थे उतना निफ्टी नहीं है, लेकिन ऐसा लगता है कि अक्ष = एफ का उपयोग करना सबसे अच्छी बात है, फिर अपने अक्षों को 'अक्ष' कमांड के साथ रखें, जो टिक टिक को देखना चाहते हैं।

संदर्भ: https://stat.ethz.ch/pipermail/r-help/2008-June/164271.html

+0

ने कोशिश की, लेकिन आखिरी मूल्य हर बार कट ऑफ हो रहा है जब मैं ऐसा करता हूं। क्या आप इसके आसपास जाने के किसी भी तरीके से जानते हैं? मैंने लंबाई के साथ गड़बड़ करने की कोशिश की लेकिन मुझे लगता है कि मेरा 'एट' और 'लेबल्स' अलग-अलग हैं। – ShortMyCDS

+0

कभी नहीं, इसे $ मिड्स का उपयोग करके पता चला। हम आपकी मदद की सराहना करते हैं! – ShortMyCDS

+0

'ब्रेक = 7' के बजाय' breaks = seq (0.5,6.5) 'का उपयोग करके आप ब्रेकपॉइंट्स को सीधे निर्दिष्ट करके बेहतर परिणाम प्राप्त कर सकते हैं। –

12

hist() रिटर्न एक्स mids घटकों में सलाखों के बिन्दुओं के समन्वय है, तो आप ऐसा कर सकते हैं:

sample_avg <- sample(size=10000,x=seq(1,6),replace=TRUE) 
foo <- hist(sample_avg, breaks =7, ylim=c(0,2000), 
    main = 'Histogram of Sample Average for 1 Coin Flip', xlab= 'Sample Average', 
    xaxt="n") 
axis(side=1,at=foo$mids,labels=seq(1,5)) 
1
# when dealing with histogram of integers, 
# then adding some residual ~ 0.001 will fix it all... 
# example: 
v = c(-3,5,5,4,10,8,8) 
a = min(v) 
b = max(v) 
foo = hist(v+0.001,breaks=b-a,xaxt="n",col="orange", 
panel.first=grid(),main="Histogram of v",xlab="v") 
axis(side=1,at=foo$mids,labels=seq(a,b))