के लिए एकाधिक किंवदंतियों geom_raster
के साथ facet_grid
या facet_wrap
का उपयोग करने की कोशिश कर रहा हूं। हालांकि, प्रत्येक पैनल में, z
सौंदर्यशास्त्र एक अलग पैमाने पर है। उदाहरण के लिए,एक ही सौंदर्यशास्त्र
##Data at end of question
ggplot(dd, aes(x,y)) +
geom_raster(aes(fill=z)) +
facet_grid(type ~ var)
देता है।
हालांकि, चूंकि सी और डी के औसत मूल्य क्रमशः 0 और 100 हैं, इसलिए हम बहुत सारे संकल्प खो देते हैं। आप भी आजमा सकते:
##Change C to D to get other panel
ggplot(subset(dd, var=="C"), aes(x,y))+
geom_raster(aes(fill=z)) +
facet_grid(type ~ var) +
theme(legend.position="bottom")
जो
और
देता है, लेकिन अब मैं दो y स्ट्रिप्स की है।
प्रश्न
- मैं
fill
सौंदर्य के लिए दो किंवदंतियों देने के लिए पहले साजिश को बदल सकते हैं? - या, यदि मैं दो अलग-अलग ग्राफ करता हूं, तो क्या मैं प्लॉट्स में से एक पर वाई स्ट्रिप को हटा सकता हूं ताकि मुझे उन्हें एक साथ दबाया जा सके - थीम के साथ गड़बड़ कर, यह सुझाव देता है कि यह संभव नहीं है।
डाटा
डाटा रेखांकन पुन: पेश करने
dd = expand.grid(x=1:10, y=1:10)
dd = data.frame(dd, type=rep(LETTERS[1:2], each=100),
var =rep(c("C", "D"), each=200))
dd$z = rnorm(400, rep(c(0, 100), each=200))
धन्यवाद। 'Plot.margin' के साथ खेलना मुझे एक ही आकार के प्लॉट्स प्राप्त करने में सक्षम बनाता है? अभी बाईं ओर का साजिश क्षेत्र दाईं ओर से छोटा है। – csgillespie
@csgillespie, ऐसा लगता है, मैंने जवाब संपादित किया, अब यह बेहतर दिखता है। – Julius
धन्यवाद। यह वही समाधान है जो मैं आया था, ** लेकिन ** मैंने स्क्रीन के किनारे से पैनल लेबल को स्थानांतरित करने के बारे में नहीं सोचा था - साफ। समाधान थोड़ा हैकी है, लेकिन मुझे संदेह है कि यह सबसे अच्छा समाधान है। बीटीडब्ल्यू, '+ ylab (NULL)' का उपयोग करके कोई वाई-अक्ष लेबल प्रदर्शित नहीं करता है, जो चीज़ को थोड़ा आसान बना सकता है। धन्यवाद। – csgillespie