2013-04-27 9 views
33

में 'अल्फा' स्तर को नियंत्रित करना ggplot2 में, मैं किंवदंती को अर्ध-पारदर्शी पृष्ठभूमि कैसे बना सकता हूं।ggplot2 legend

निम्नलिखित कोड, एक पूरी तरह से पारदर्शी पृष्ठभूमि (और स्थिति नियंत्रण)

plot <- plot + theme(legend.position=c(1,1),legend.justification=c(1,1), 
         legend.direction="vertical", 
         legend.box="horizontal", 
         legend.box.just = c("top"), 
         legend.background = element_rect(fill="transparent")) 

देता है लेकिन यह कैसे एक अल्फा के स्तर को नियंत्रित कर सकते हैं, मैं नहीं मानता कि element_rect कि क्षमता है।

उत्तर

47

आप रंग scales से रंग 0 अल्फा मूल्य प्रदान करके पैकेज alpha() के साथ semitransparency को नियंत्रित कर सकते हैं। जब आप fill= के लिए रंग प्रदान करते हैं तो इस फ़ंक्शन का उपयोग element_rect() के अंदर किया जा सकता है।

library(scales)  
p<-ggplot(iris,aes(Petal.Length,Petal.Width,color=Species))+geom_point() 
p+theme(legend.position=c(1,1),legend.justification=c(1,1), 
     legend.direction="vertical", 
     legend.box="horizontal", 
     legend.box.just = c("top"), 
     legend.background = element_rect(fill=alpha('blue', 0.4))) 

enter image description here

+0

मैंने कोशिश की है कि, लेकिन मेरे ggplot2 रिपोर्ट त्रुटि "समारोह अल्फा नहीं खोजा जा सका" ... ??? नवीनतम संस्करण का उपयोग, 0.9.3.1 –

+3

यह फ़ंक्शन लाइब्रेरी (स्केल) में है। मेरा जवाब अपडेट किया गया। –

+0

उत्कृष्ट। अब काम करता है, चीयर्स। –