2012-12-20 35 views
8

मैं चाहता हूं (ऐसा करने के लिए सुझाव मिला) बॉक्सप्लॉट को अलग-अलग रूप और अतिरिक्त लेबल के साथ बनाएं। अपेक्षित (पूर्ण नहीं) आउटपुट निम्न जैसा दिखाई देगा (प्रत्येक बॉक्स में क्वाटाइल लेबल हैं) और नमूना आकार।बॉक्सप्लॉट के बदलते लेआउट और इसमें लेबल जोड़ने

enter image description here

boxplot(len~supp*dose, data=ToothGrowth, notch=TRUE, 
    col=(c("gold","darkgreen")), 
    main="Tooth Growth", xlab="Suppliment and Dose", names = supp) 

    # some unsuccessful trials 
# to add names 
boxplot(len~supp*dose, data=ToothGrowth, notch=TRUE, 
    col=(c("gold","darkgreen")), 
    main="Tooth Growth", xlab="Suppliment and Dose", names = supp*dose) 
# to remove the plot outline 
boxplot(len~supp*dose, data=ToothGrowth, notch=TRUE, 
    col=(c("gold","darkgreen")), 
    main="Tooth Growth", xlab="Suppliment and Dose", bty="n") 

उत्तर

9

यह आप आरंभ करना चाहिए। कुंजी यह जानना है कि plot = FALSE सेट करते समय आप किसी ऑब्जेक्ट में boxplot के परिणाम सहेजते हैं, तो आपको प्रत्येक ऑब्जेक्ट कहां जाता है, इसके लिए आपको सारी जानकारी मिलती है। फिर आप text के माध्यम से टेक्स्ट जोड़ने के लिए इस जानकारी का उपयोग कर सकते हैं।

d <- boxplot(len~supp*dose, data=ToothGrowth,plot = FALSE) 

boxplot(len~supp*dose, data=ToothGrowth, notch=TRUE, 
    col=(c("gold","darkgreen")), 
    main="Tooth Growth", xlab="Suppliment and Dose",axes = FALSE) 

for (i in 1:ncol(d$stats)){ 
    text(i,d$stats[,i],labels = d$stats[,i],cex = 0.75,adj = c(0.5,0)) 
    text(i,d$stats[5,i]+1,labels = paste0("n=",d$n[i]),cex = 0.75) 
    text(i-0.25,d$stats[3,i],labels = d$names[i],adj = 1,cex = 0.75) 
} 

मैं होता है, तथापि, का कहना है जो कोई भी सुझाव दिया है कि यह है कि आप:

  • कुल्हाड़ियों
  • व्याख्या को दूर quantile मूल्यों और नमूने के साथ प्रत्येक boxplot आकार

नहीं करना चाहिए ग्राफ बनाने के बारे में किसी को सलाह दे रहे हैं। कभी। उन्होंने सफलतापूर्वक अपना बॉक्सप्लॉट बहुत अधिक खराब कर दिया है।

enter image description here

+3

धन्यवाद, मैं मैं अपने संदेश दे सकते हैं चाहते हैं - कुछ समय मैं ऐसे सुझाव प्राप्त, मैं पालन करने की आवश्यकता (आदेश!)! – shNIL