2016-07-15 24 views
1

Ich versuche, eine xtable mit langen Sätzen in jeder Zeile in meinem PDF-Dokument zu erstellen, das mit knitr generiert wird.Automatischer linebreak Knitr xtable (R/Latex)

Ich habe versucht, dass:

<<echo=F,results="asis",command=NA>>= 
df<-c("This is a very very very very very very very very very very very very very very very very very very very very long line", 
"Another very very very very very very very very very very very long line") 
df<-as.data.frame(df) 
xtab <- xtable(df) 
print.xtable(xtab,sanitize.text.function=function(x){x}) 
@ 

Aber mein Ergebnis ist:

enter image description here

Wie Sie sehen können. Mein xtable überläuft die Seite, weil meine Zeilen zu lang sind. Kann mir jemand helfen ?

PS: Ich kann {tabular} nicht verwenden, da die Länge meines Datenrahmens von einer glänzenden App-Benutzereingabe abhängt.

Antwort

1

Werfen Sie einen Blick auf die align Funktion:

<<echo=FALSE,results=tex>>= 
library(xtable) 
df<-c("This is a very very very very very very very very very very very very very very very very very very very very long line", 
"Another very very very very very very very very very very very long line") 
df<-as.data.frame(df) 
xtab <- xtable(df) 
align(xtab) <- "|lp{6cm}|" 
print.xtable(xtab,sanitize.text.function=function(x){x}) 
@ 

Sie können es verwenden, um die Spaltenausrichtung, wie Sie es für jede andere LaTeX-Tabelle zu ändern. Diese Ressourcen können für Sie hilfreich:

  1. xtable gallery
  2. LaTeX Wikibook
+0

Sie schaukeln! Vielen Dank :) – Smich7

+0

@ Smich7 Willkommen bei StackOverflow! Ich habe bemerkt, dass du keine der Antworten, die du auf dieser Seite erhalten hast, akzeptiert hast. Wenn eine Antwort Ihr Problem löst, klicken Sie auf das Häkchen (es wird grün). Wenn Sie weiterhin keine Antworten akzeptieren, werden die Leute weniger geneigt sein, Ihre Fragen zu beantworten. Glückliche Kodierung. – dayne

+0

Entschuldigung, ich mache das jetzt! – Smich7