update
trellis
प्लॉट की विधि प्रारंभिक कॉल के बाद lattice
साजिश को संशोधित करने की अनुमति देती है। लेकिन update
व्यवहार संलग्न करने से प्रतिस्थापित करने की तरह अधिक है। यह ggplot2
मुहावरे से अलग है जहां प्रत्येक नई परत पहले से मौजूद है जो additive है। lattice
का उपयोग करके इस additive व्यवहार को प्राप्त करना संभव है?क्या आर में जाली पैनल अपडेट करना संभव है?
एक उदाहरण:
LL <- barchart(yield ~ variety | site, data = barley,
groups = year, stack = TRUE,
between=list(y=0.5),
scales = list(x = list(rot = 90)))
print(LL)
अब मैं मौजूदा साजिश को panel.text
जोड़ना चाहते हैं। निम्नलिखित तरीके से update
का उपयोग करना काम नहीं करता:
update(LL, panel=function(...){
args <- list(...); panel.text(args$x, args$y+2, round(args$y, 0))
})
मुझे पता है कि मैं पैनल समारोह में सभी परतों के निर्दिष्ट द्वारा update
उपयोग कर सकते हैं:
update(LL, panel=function(...){
args <- list(...)
panel.barchart(...)
panel.text(args$x, args$y+2, round(args$y, 0))
})
हो जाएगा ताकि काम, लेकिन यह आवश्यक है कि मुझे पता है कि lattice
साजिश में पहले से क्या है - या मैं अपने कोड को काफी हद तक दोहराता हूं।
प्रश्न: वहाँ update.trellis
में मौजूदा पैनल में जोड़ने का एक तरीका है?
एक उपयोगी टिप के लिए +1 – Andrie
नहीं है अच्छा [latticeExtra परिचय पृष्ठ] (http (और मेरी कोड में लापता 90 ठीक करने के लिए!): //latticeextra.r-forge.r -project.org)। – Marek
एक तरफ दिलचस्प: यदि आप उसी सत्र में 'ggplot2' भी लोड करते हैं, तो ggplot 'layer' फ़ंक्शन जाली' परत' को छुपाएगा। तो मुझे इस फ़ंक्शन को 'एलएल + लैटिसएक्स्ट्रा :: लेयर (...) ' – Andrie