2014-08-29 12 views
7

Ich weiß nicht, wie Ränder für PDF-Druck mit Raster R-Paket angegeben werden.Hinzufügen von Rändern mit Raster R-Paket

Ich erstelle ein grid.arrange() Objekt und ich steckte es in eine PDF wie folgt aus:

pdf('test.pdf',11.69,8.27) 
grid.arrange(textGrob('text1', gp=gpar(cex=4)), 
      ncol=1, main=textGrob('title', gp=gpar(cex=1.5)), 
      widths = c(1), heights = c(1)) 
dev.off() 

Aber der Titel ist, klicken Sie am oberen Rand des Blattes. Ich möchte gerne Ränder hinzufügen. Wenn ich eine textGrob anstelle der main= Funktion für den Titel hinzufüge, kann ich es von der Spitze weg behalten, aber es ist keine Lösung für mich, weil ich Diagramme stellen muss und sie sind nah an der Kante auch.

Antwort

3

arrangeGrob ein Ansichtsfenster Argument hat,

vp = viewport(height=unit(0.8, "npc"), 
          width=unit(5, "cm")) 

g = arrangeGrob(textGrob('text1', gp=gpar(cex=4)), 
       top = textGrob('title', gp=gpar(cex=1.5)), 
       vp=vp) 
grid.newpage() 
grid.rect(vp=vp) 
grid.draw(g) 

enter image description here

+0

Perfekt, vielen Dank! – Ben

0

Wie ich es in einem pdf plotten (11.69,8.27), änderte ich dieses:

vp = viewport(height=unit(8.17, "inches"), width=unit(11.59, "inches")) 
g$vp = vp 
grid.newpage() 
grid.rect(vp=vp,gp=gpar(col="white")) 
grid.draw(g) 

wie dies die Kanten von Rechteck ist nicht sichtbar und ich habe etwa 1 mm Ränder.

+0

das ist nicht wirklich eine Antwort, auch das weiße Rechteck scheint sinnlos, ich lege es nur zur Veranschaulichung. – baptiste

Verwandte Themen