2014-06-17 9 views
14

मेरे पास ggplot2 में बनाई गई एक साजिश है जो scale_fill_gradientn का उपयोग करती है। मैं न्यूनतम और अधिकतम पैमाने पर किंवदंती पर टेक्स्ट जोड़ना चाहता हूं। उदाहरण के लिए, किंवदंती न्यूनतम प्रदर्शन "न्यूनतम" और पौराणिक अधिकतम प्रदर्शन "अधिकतम" पर। अलग-अलग भरने और पाठ के बजाय संख्याओं के साथ लेबल जोड़ने के लिए पोस्ट हैं (उदा। here), लेकिन मुझे यह सुनिश्चित नहीं है कि labels सुविधा scale_fill_gradientn के साथ केवल न्यूनतम और अधिकतम टेक्स्ट को सम्मिलित करने के लिए कैसे उपयोग करें। वर्तमान में मैं हो रही त्रुटियों के लिए उपयुक्त हूँ:लेबल के साथ न्यूनतम और अधिकतम स्केल ग्रेडियेंट लीजेंड लेबल करें: ggplot2

Error in scale_labels.continuous(scale, breaks) : Breaks and labels are different lengths

पैमाने के इस प्रकार के लिए ggplot2 के भीतर इस पाठ लेबल संभव है/भरने?

# The example code here produces an plot for illustrative purposes only. 
# create data frame, from ggplot2 documentation 
df <- expand.grid(x = 0:5, y = 0:5) 
df$z <- runif(nrow(df)) 

#plot 
ggplot(df, aes(x, y, fill = z)) + geom_raster() + 
scale_fill_gradientn(colours=topo.colors(7),na.value = "transparent") 

उत्तर

24

scale_fill_gradientn() के लिए आप दोनों बहस प्रदान करना चाहिए: breaks= और labels= एक ही लंबाई के साथ। तर्क limits= के साथ आप न्यूनतम और अधिकतम मूल्य की आवश्यकता वाले रंगीन रंग का विस्तार करते हैं।

ggplot(df, aes(x, y, fill = z)) + geom_raster() + 
     scale_fill_gradientn(colours=topo.colors(7),na.value = "transparent", 
          breaks=c(0,0.5,1),labels=c("Minimum",0.5,"Maximum"), 
          limits=c(0,1)) 

enter image description here

+0

इस जवाब अभी भी मान्य है? मैं निम्नलिखित कमांड का उपयोग नहीं कर रहा हूं। न्यूनतम और अधिकतम मान कलर बार पर नहीं दिखते हैं। यहां मेरा कोड 'scale_fill_gradientn (रंग = pal (100), ब्रेक = ब्रेक, सीमा = lim, लेबल = ब्रेक, मार्गदर्शिका = guide_colorbar (शीर्षक = अभिव्यक्ति (पेस्ट (' घंटा ', sep = "")) , title.position = "right", title.vjust = 0.8, barwidth = 75)) ' – Gandalf

+1

कोड अभी भी मान्य है। आपका कोड चेक नहीं किया जा सकता क्योंकि यह पुन: उत्पन्न नहीं होता है। –

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