ggplot2 के लिए यह सवाल यहां के एक निरंतरता है जोड़ें: Create non-overlapping stacked area plot with ggplot2प्रत्यक्ष लेबल geom_area चार्ट
मैं एक ggplot2 क्षेत्र निम्नलिखित कोड द्वारा बनाई चार्ट है। मैं चाहता हूं कि names
से लेबल ग्राफ के दाईं ओर गठबंधन हों। मुझे लगता है कि directlabels
काम कर सकता है, लेकिन जो भी सबसे चालाक है कोशिश करने के लिए तैयार हूं।
require(ggplot2)
require(plyr)
require(RColorBrewer)
require(RCurl)
require(directlabels)
link <- getURL("http://dl.dropbox.com/u/25609375/so_data/final.txt")
dat <- read.csv(textConnection(link), sep=' ', header=FALSE,
col.names=c('count', 'name', 'episode'))
dat <- ddply(dat, .(episode), transform, percent = count/sum(count))
# needed to make geom_area not freak out because of missing value
dat2 <- rbind(dat, data.frame(count = 0, name = 'lane',
episode = '02-tea-leaves', percent = 0))
g <- ggplot(arrange(dat2,name,episode), aes(x=episode,y=percent)) +
geom_area(aes(fill=name, group = name), position='stack') + scale_fill_brewer()
g1 <- g + geom_dl(method='last.points', aes(label=name))
मैं ब्रांड directlabels
के लिए नए और वास्तव में यकीन नहीं कैसे लेबल क्षेत्रों के रूप में एक ही रंग के साथ ग्राफ के दाईं ओर संरेखित करने के लिए प्राप्त करने के लिए कर रहा हूँ।
जवाब के लिए धन्यवाद। मुझे डायरेक्टलैबल्स को समझने की ज़रूरत है, क्योंकि मुझे नहीं पता कि यह दृष्टिकोण कितना सामान्य है। – Idr
@csgillespie, यह उपयोगी धन्यवाद था। यहां मैंने सिंटैक्स का उपयोग किया (एक और डीएफ): '' + geom_text (डेटा = सबसेट (डीएफ, वर्ष == "2012"), एईएस (एक्स = वर्ष, वाई = cumsum (मान), लेबल = चर), vjust = 6 , hjust = -.2, आकार = 4) '', जहां मैंने इसे 'vjust'' और' hjust'' पैरामीटर प्राप्त करने के लिए सही तरीके से पाया। मैं यह कहने के लिए कह रहा हूं कि आप '' cumsum'' को '' aes() '' में पारित कर सकते हैं, जिसे मैंने परीक्षण और त्रुटि से खोजा था। दाईं ओर की किंवदंती के लिए, छवि के समान क्रम में रंग प्राप्त करने के लिए '' + गाइड (fill = guide_legend (रिवर्स = TRUE)) '' सेट करना उपयोगी है। क्या आप बहिष्कृत ''opts'' को अपडेट करना चाहते हैं? – PatrickT
और उपरोक्त मेरी टिप्पणी में डेटाफ्रेम ('06-at-the-codfish-ball'' और' '2012'' 'के अंतिम तत्व को पकड़ने के लिए, आप' पूंछ()' ' तर्क '1', उदाहरण के साथ कार्य करें 'पूंछ (डीएफ 2.1 $ वर्ष, 1)' ' – PatrickT