2013-09-21 27 views
4

我很難在基於表格的佈局中插入R輸出。將針織塊放置在乳膠布局內(圖表)

\documentclass{article} 
\usepackage{float} 

\begin{document} 

    \begin{table} 
     \begin{tabular}{ll} 
     A & 
     <<results1>>= 
     plot(1,1) 
     @ \\ 
     B & 
     <<results2>>= 
     table(rnorm(10)) 
     @ 
     \end{tabular} 
    \end{table} 

\end{document} 

無論是knitr還是乳膠扼流圈,因爲換行/塊語法等都是錯誤的。

我有一些工作與小型郵件,但我需要更多的自由佈局。解決方法是單獨使用brew或在knitr之前使用brew,但是我想知道是否有更簡單的替代方法。

回答

4

我認爲你需要把\\放在一個新的線上。我認爲@必須是自己的。另外,您需要在第二個表格行上再添加一個\\。這似乎適用於我:

更新:感謝@Statwonk我意識到,echo=FALSE將阻止R代碼顯示。

\documentclass{article} 
\usepackage{float} 

\begin{document} 

    \begin{table} 
     \begin{tabular}{ll} 
     A & 
     <<results1, echo=FALSE>>= 
     plot(1,1) 
     @ 
     \\ 
     B & 
     <<results2, echo=FALSE>>= 
     table(rnorm(10)) 
     @ 
     \\ 
     \end{tabular} 
    \end{table} 

\end{document} 
+0

嗯。對於我來說,這樣的情節會讓情節變得如此遙遠,只有x軸的L軸和LHS的一小部分在頁面上可見。 –

2

每@nograpes答案,你需要有一個單獨的行的\\ endlines從領先@

繪圖偏移到右邊的原因是,默認情況下會顯示R代碼塊。覆蓋此設置echo=FALSE。另請注意,您可以使用\Sexpr{ r code goes here }語法將小部分R代碼內聯。這可以幫助保持你的表格整齊。

見下文:

\documentclass{article} 
\usepackage{float} 

\begin{document} 

\begin{table} 
    \begin{tabular}{ll} 
    A & 
    <<result1, echo=FALSE>>= 
    plot(1,1) 
    @ 
    \\ 
    B & \Sexpr{table(rnorm(10))} 
    \\ 
    \end{tabular} 
\end{table} 

\end{document} 

希望這有助於!

+0

謝謝,你可以把它變成對@nograpes原始答案的評論嗎? – baptiste