Ich habe ein umfangreiches Thema erstellt, um in ggplot
ähnlich Five Thirty Eight zu plotten. Ohne ggthemes
, wie kann ich linesGrob
verwenden, um eine Linie über meiner Fußzeile zu zeichnen, die zentriert ist und 85% des Weges über die Handlung geht, ohne die Ränder der Handlung zu berühren? Ich strebe nach der Fußzeile, die dieser Handlung ähnlich ist. Zeichnung ggplot Foooter Mit linesGrob innerhalb von grobTree
Ich kann den Schriftarttext, die Farbe und die Größe redigieren also mach dir keine Sorgen darüber.
Bisher, was ich habe, ist dies:
data(iris)
library(ggplot2)
library(grid)
library(gridExtra)
plot20 <- ggplot(iris,aes(x=Petal.Length,y=Sepal.Length,color=Species)) +
geom_point(alpha=0.5,size=5) +
ylab("") +
xlab("") +
theme(panel.grid.minor.y=element_blank(),
panel.grid.major.x=element_line(color="#D2D2D2",size=0.7),
panel.grid.major.y=element_line(color="#D2D2D2",size=0.7),
panel.grid.minor.x=element_blank(),
panel.background = element_rect(fill = '#F0F0F0',colour=NA),
plot.background = element_rect(fill = '#F0F0F0', colour=NA, size = 4),
legend.background=element_rect(fill="#F0F0F0"),
legend.key=element_blank(),
legend.title=element_text(face="bold"),
axis.text=element_text(face="bold"),
legend.position="none",
axis.ticks=element_blank())
#Plot Header
my_g2 <- grobTree(rectGrob(gp=gpar(fill='#F0F0F0',col=NA)),
textGrob("Iris Dataset",x=0.115, vjust = -0.5,gp=gpar(fontsize=18,fontface="bold")),
textGrob("This is a subheader for the iris dataset",x=0.235,vjust=1.5,gp=gpar(fontsize=14)))
#Plot Footer
my_g1 <- grobTree(rectGrob(gp=gpar(fill="#F0F0F0",col=NA)),
textGrob(" medavis6",x=0,hjust=0,gp=gpar(col="darkorange",fontsize=8,fontface="bold")),
textGrob("Source: R",x=.85,hjust=-1.06,gp=gpar(col="black",fontsize=8)))
#Plot All Together
allplot <- grid.arrange(my_g2,plot20,my_g1,heights=c(1.17,11,0.5))
Was gibt mir diese.
Ich glaube, ich soll linesGrob()
in meiner Fußzeile verwenden grobTree()
, aber wenn ich versuche, es zu tun, kann ich es nicht in meinen Plots erscheinen zu lassen. Ich bin mir nicht sicher, ob meine rectGrob()
Plotting ist oder was passiert.
Vielen Dank für jede Hilfe und bitte, lassen Sie mich wissen, wenn Sie eine Klarstellung benötigen. Außerdem, wenn einer meiner Code schlecht geschrieben ist, suche ich immer nach konstruktiver Kritik, um es besser zu machen!
Perfect! Danke für die schnelle Arbeit und Hilfe. Es ist sehr geschätzt! – medavis6