• R语言
  • knitr代码中含有中文时显示不全

代码如下:

<br />
\batchmode<br />
\makeatletter<br />
\def\input@path{{\string"C:/Documents and Settings/Administrator/My Documents/\string"/}}<br />
\makeatother<br />
\documentclass[UTF8,adobefonts]{ctexart}<br />
\usepackage[T1]{fontenc}</p>
<p>\makeatletter<br />
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% User specified LaTeX commands.<br />
% 如果没有这一句命令,XeTeX会出错,原因参见<br />
% http://bbs.ctex.org/viewthread.php?tid=60547<br />
\DeclareRobustCommand\nobreakspace{\leavevmode\nobreak\ }</p>
<p>\makeatother</p>
<p>\usepackage{xunicode}<br />
\begin{document}<br />
<<results='asis'>>=<br />
x=runif(5)<br />
y=rnorm(5)<br />
d=data.frame(x,y)<br />
print("为啥含有中文的代码显示不全?")<br />
library(xtable)<br />
mytab=xtable(t(d),caption="我的表格",digits=5)<br />
print(mytab,caption.placement="top")<br />
@</p>
<p>\end{document}</p>
<p>
</p>

结果显示如下:

x = runif(5)

y = rnorm(5)

d = data.frame(x, y)

print("为啥含有中文的代码

[1] " 为啥含有中文的代码显示不全?"

library(xtable)

mytab = xtable(t(d), caption = "我的表格", digit

print(mytab, caption.placement = "top")

表1: 我的表格

1 2 3 4 5

x 0.59176 0.94468 0.68574 0.41128 0.57827

y 0.12881 0.73488 -0.38950 0.49239 0.98272

不知道什么原因?

老问题了,不过新版本还没在CRAN上发出来。目前可以用:

library(devtools)<br />
install_github('evaluate', 'hadley')<br />
install_github('knitr', 'yihui')
</p>

回复 第2楼 的 谢益辉:恩,我一直怀疑是不是我语言环境没有设置对,后来想想都已经能够显示中文了,再看看knit转出来的tex,发现这里面就没有显示完全。不过我又看到网上有人做出来的文档就没有问题,但一直也没有搜到相关的解决方法。这次OK了~~谢谢~~