knitr:fig.height 在新版本中必须是数字吗?
knitr: fig.height must be numeric in new version?
我下载了新版本的 knitr 包,当我尝试在 Rnw 文件中包含绘图时突然出现以下错误:
Error in options[[sprintf("fig.%s", i)]] * options$dpi :
non-numeric argument to binary operator
Calls: knit ... process_group.block -> call_block -> fix_options -> %n%
经过大量试验,我发现问题出在命令 fig.height 上,显然它应该是数字。此代码产生错误:
\documentclass{article}
\begin{document}
<<cat, fig.cap="dog", fig.height='\textheight'>>=
plot(c(1, 2, 3), c(2, 1, 3))
@
\end{document}
此代码不:
\documentclass{article}
\begin{document}
<<cat, fig.cap="dog", fig.height=6>>=
plot(c(1, 2, 3), c(2, 1, 3))
@
\end{document}
很遗憾,我不知道这个 6 的计量单位是什么。
此代码:
\documentclass{article}
\begin{document}
<<cat, fig.cap="dog", fig.height=6cm>>=
plot(c(1, 2, 3), c(2, 1, 3))
@
\end{document}
产生不同的错误:
Error in base::parse(text = code, srcfile = NULL) :
1:44: unexpected symbol
1: alist( 'cat', fig.cap="dog", fig.height=6cm
^
Calls: knit ... withCallingHandlers -> eval -> parse_only -> <Anonymous>
Execution halted
总而言之,knitr 似乎真的需要 fig.height 的数值,这有点烦人,因为我已经在整个文档中输入了很多 fig.height='\textheight'
命令(回到仍然有效的日子)而且我也不知道对应于 Latex 的 \textheight
的数值是什么。
有什么建议吗?
更新:我做了一些更多的实验,结果是你输入 fig.height 的数字在 Latex 文件中没有出现,相反它们影响了由 cat.pdf 生成的图像的尺寸直接编织。这种建议完全省略 fig.height
可能是最好的策略。这仍然没有告诉我们如何在 tex 文档中获取 [height=\textheight]
。
使用块选项 out.height
而不是 fig.height
。
我下载了新版本的 knitr 包,当我尝试在 Rnw 文件中包含绘图时突然出现以下错误:
Error in options[[sprintf("fig.%s", i)]] * options$dpi :
non-numeric argument to binary operator
Calls: knit ... process_group.block -> call_block -> fix_options -> %n%
经过大量试验,我发现问题出在命令 fig.height 上,显然它应该是数字。此代码产生错误:
\documentclass{article}
\begin{document}
<<cat, fig.cap="dog", fig.height='\textheight'>>=
plot(c(1, 2, 3), c(2, 1, 3))
@
\end{document}
此代码不:
\documentclass{article}
\begin{document}
<<cat, fig.cap="dog", fig.height=6>>=
plot(c(1, 2, 3), c(2, 1, 3))
@
\end{document}
很遗憾,我不知道这个 6 的计量单位是什么。
此代码:
\documentclass{article}
\begin{document}
<<cat, fig.cap="dog", fig.height=6cm>>=
plot(c(1, 2, 3), c(2, 1, 3))
@
\end{document}
产生不同的错误:
Error in base::parse(text = code, srcfile = NULL) :
1:44: unexpected symbol
1: alist( 'cat', fig.cap="dog", fig.height=6cm
^
Calls: knit ... withCallingHandlers -> eval -> parse_only -> <Anonymous>
Execution halted
总而言之,knitr 似乎真的需要 fig.height 的数值,这有点烦人,因为我已经在整个文档中输入了很多 fig.height='\textheight'
命令(回到仍然有效的日子)而且我也不知道对应于 Latex 的 \textheight
的数值是什么。
有什么建议吗?
更新:我做了一些更多的实验,结果是你输入 fig.height 的数字在 Latex 文件中没有出现,相反它们影响了由 cat.pdf 生成的图像的尺寸直接编织。这种建议完全省略 fig.height
可能是最好的策略。这仍然没有告诉我们如何在 tex 文档中获取 [height=\textheight]
。
使用块选项 out.height
而不是 fig.height
。