आर में किसी ऑब्जेक्ट में ggplot शैली को सहेजने का सबसे अच्छा तरीका क्या है? मुझे पता है कि ggplot में कस्टम थीम हैं, लेकिन वहां बहुत से दृश्य डिज़ाइन हैं जो थीम फ़ंक्शन में फिट नहीं होते हैं।ऑब्जेक्ट में कस्टम ggplot शैलियों को स्टोर करें
यहां कुछ ऐसे नमूना (पिघल) डेटा और एक ग्राफ मैं
library(ggplot2)
mdf <- structure(list(group = structure(c(2L, 3L, 1L, 2L, 3L, 1L), .Label = c("democrat",
"founder", "libertarian"), class = "factor"), variable = structure(c(1L,
1L, 1L, 2L, 2L, 2L), .Label = c("similar", "compete"), class = "factor"),
value = c(0.7, 0.2, 0.4, 0.3, 0.8, 0.6)), row.names = c(NA,
-6L), .Names = c("group", "variable", "value"), class = "data.frame")
ggplot(mdf, aes (x=group, y=value, fill = variable)) +
geom_bar(stat="identity", position="dodge", alpha = 0.8) +
geom_bar(stat="identity", position="dodge", color = "#A9A9A9", alpha = 0.8) +
scale_fill_manual(values=c("#05f2ae", "#17b0c4")) +
geom_text(aes(x=group, y=value, ymax=value, label=value),
position=position_dodge(1), vjust=-1, size=12) +
coord_cartesian(ylim = c(0, 1))
theme(plot.margin = unit(c(1,1,2,2), "cm"),
axis.text.x = element_text(vjust=0.5, size=20),
plot.title=element_text(size=20, vjust=2),
panel.grid.major = element_blank(), panel.grid.minor = element_blank(),
axis.title.x = element_blank(), axis.title.y = element_blank(),
panel.background = element_rect(fill = "#D9D9D9"))
पर काम कर रहा हूँ मैं एक ही डिजाइन के साथ एक बहुत रेखांकन उत्पादन कर रहा हूँ और एक वस्तु में डिजाइन स्टोर करना चाहते हैं, की तरह है "plot_style", ताकि ग्राफ को शैली के साथ स्वचालित रूप से अपडेट किया जा सके, भले ही मैं इसे बाद में बदलने का फैसला करता हूं।
यदि मैं किसी वस्तु "x" में ggplot (...) के नीचे सबकुछ स्टोर करने का प्रयास करता हूं, तो मुझे एक त्रुटि मिलती है, Error: No layers in plot
। एक ऑब्जेक्ट में ggplot (चर/चर से कम) के सभी तत्वों को स्टोर करने का बेहतर तरीका क्या है?
धन्यवाद।
'? + .gg' देखें। उदाहरण के लिए, आप किसी ऑब्जेक्ट पर अपनी मूल साजिश असाइन कर सकते हैं, और फिर '% +%' का उपयोग कर अपने प्लॉट को किसी अन्य डेटा फ्रेम के साथ अपडेट कर सकते हैं। – Henrik