【发布时间】:2015-02-09 13:09:49
【问题描述】:
我正在尝试使用 xtable 生成一个 tex 表。 在 R 中,该表包含:
>tvPre
p\\_1 p\\_2 p\\_3
FV "\\textuparrow M" "" "\\textuparrow R"
a "\\textuparrow WH" "" ""
b "\\textuparrow H" "" "\\textuparrow (H)"
c "\\textuparrow (WH)" "" "\\textuparrow (H)"
Oil "\\textuparrow W" "\\textuparrow R" "\\textdownarrow R"
如果我在控制台中使用标识功能进行消毒,那就没问题了: 指令:
print(xtable(tvPre), rotate.colnames=T,
sanitize.text.function = getOption("xtable.sanitize.text.function", function(x)x))
那么,我得到:
& \begin{sideways} p\_1 \end{sideways} & \begin{sideways} p\_2\end{sideways} & \begin{sideways} p\_3 \end{sideways} \\
\hline
FV & \textuparrow M & & \textuparrow R \\
a & \textuparrow WH & & \\
b & \textuparrow H & & \textuparrow (H) \\
c & \textuparrow (WH) & & \textuparrow (H) \\
O & \textuparrow W & \textuparrow R & "\\textdownarrow R" \\
不过,当我将代码放入 Sweave 文件 (.Rnw) 时,我会在 .tex 中获得:
& \begin{sideways} p\_1 \end{sideways} & \begin{sideways} p\_2\end{sideways} & \begin{sideways} p\_3 \end{sideways} \\
\hline
FV & \textuparrow M & & \textuparrow R \\
a & \textuparrow W & & \\
b & H & & H \\
c & \textuparrow W & & H \\
O & \textuparrow W & \textuparrow R & \textdownarrow R \\
然后,所有括号都消失了,箭头也消失了。我也尝试使用$\\uparrow$,但仍然无法正常工作。
第三行第二列 ("\\textuparrow WH") 打印时没有 "H",但在下一行 " \\textuparrow H" 中仅打印 "H"。
在.tex 文件中,其余带括号的单元格不带箭头也不带括号。
我需要像控制台中打印的那样在 .tex 中打印,有什么线索吗??
【问题讨论】:
-
您能否为您的表格添加一个可重现的示例 (stackoverflow.com/a/5963610/2633645)。您可能需要使用双反斜杠来转义特殊字符。