Was ist der beste Weg, um eine ggplot Stil zu einem Objekt in R zu speichern? Ich weiß, dass ggplot benutzerdefinierte Designs hat, aber es gibt viele visuelle Designs, die nicht in die Theme-Funktion passen.Speichern Sie benutzerdefinierte ggplot-Stile in Objekt
Hier einige Proben (geschmolzen) Daten und eine grafische Darstellung, ich auf
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"))
gearbeitet habe eine Menge Graphen mit dem gleichen Design und die Konstruktion in einem einzigen Objekt speichern mag ich produzieren, wie "plot_style", damit die Graphen automatisch mit dem Stil aktualisiert werden, auch wenn ich mich entscheide, sie später zu ändern. Wenn ich versuche, alles unter ggplot (...) in einem Objekt "x" zu speichern, bekomme ich einen Fehler, Error: No layers in plot
. Was ist der beste Weg, um alle Elemente eines ggplot (minus der Variablen/Daten) in einem einzigen Objekt zu speichern?
Vielen Dank.
Siehe '? +. Gg'. Sie können beispielsweise Ihr Grunddiagramm einem Objekt zuweisen und dann Ihr Diagramm mit einem anderen Datenrahmen aktualisieren, indem Sie%% verwenden. – Henrik