2016-06-29 21 views
0

Gibt es eine Möglichkeit, zwei Bildobjekte nebeneinander in Rmarkdown (html output) zu platzieren?Bildobjekte in Rmarkdown nebeneinander platzieren

Im Idealfall würde Ich mag Lage sein, so etwas zu tun:

```{r} 
library(ggplot2) 
library(data.table) 

dt<-data.table(a=1:10, b=1:10) 
gg <- ggplot(dt,aes(a,b)) + geom_line() 
``` 

Und dann gg zweimal anrufen (oder w/ein anderes Objekt) entweder in einer anderen Code Chunk oder Inline wie (obwohl dies ‚doesn t Arbeit)

`r gg` `r gg` 

Und haben sie in der HTML Seite an Seite erscheinen. Ich habe nichts bestimmtes zu Rmarkdown und nur einige andere Vorschläge für gespeicherte Bilder gesehen, anstatt ein Objekt, wie ich es hier gezeigt habe.

Antwort

3

Hier ist, wie ich drei Parzellen arrangieren

library(ggplot2) 
library(gridExtra) 

o1 <- ggplot(...) 

o2 <- ggplot(...) 

o3 <- ggplot(...) 

# for Aligning Axes in ggplot2 see 
# http://www.exegetic.biz/blog/2015/05/r-recipe-aligning-axes-in-ggplot2/ 

o2 <- ggplot_gtable(ggplot_build(o2)) 
o3 <- ggplot_gtable(ggplot_build(o3)) 
maxWidth = unit.pmax(o2$widths[2:3], o3$widths[2:3]) 

o2$widths[2:3] <- maxWidth 
o3$widths[2:3] <- maxWidth 

grid.arrange(o1, arrangeGrob(o2, o3, nrow=2), 
      ncol=2, widths=c(1, 2)) 

Das Ergebnis ist so etwas wie dieses

enter image description here

+0

so toll, dank funktioniert. Weißt du, ob es eine Möglichkeit gibt, etwas Ähnliches mit einem HTML-Widget in R zu tun? Wie einer aus dem 'dygraphs' Paket? Es besagt, dass nur 'grobs' erlaubt sind. – moman822

Verwandte Themen