我可以使用 tikz 包(在 LaTeX 端)和 tikzDevice 包(在 R 端)将我的 R 图包含在 LaTeX 文档中。我使用以下 R 代码作为示例,在 R 中生成了许多包含我的图的 .tex 文件:
library(tikzDevice)
tikz(file = 'BarplotScreenType.tex', width = 3, height = 3)
barplot(height=table(screentype),main="", xlab="Types of screens", ylab="Count", ylim=c(0,12), col="blue")
dev.off()`
我需要做的是将所有这些 .tex 文件包含在 LaTeX 文档中一个漂亮的无边框图像表中。我之前使用过一段代码(如下所示),它允许我使用 png 图像\raisebox{-.1\height}{\includegraphics[width=0.5\textwidth, height=0.3\textheight, inner]{AchavanichOriginalCROPED1}}
:
\begin{table*}[!htbp]
\caption{Table showing decimated images of Achavanich Beaker(original
resolution was 6.1M faces - 1st picture on left)}\label{table:images}
\centering
\begin{center}
\begin{tabular}{p{8.9cm}p{8.2cm}}
\raisebox{-.1\height}{\includegraphics[width=0.5\textwidth,
height=0.3\textheight, inner]
{AchavanichOriginalCROPED1}}&\raisebox{-.1\height}
{\includegraphics[width=0.5\textwidth, height=0.3\textheight, inner]
{Achavanich3MCROPED3}} \\
\raisebox{-.1\height}{\includegraphics[width=0.5\textwidth,
height=0.3\textheight, inner]
{Achavanich15MCROPED2}}&\raisebox{-.1\height}
{\includegraphics[width=0.5\textwidth,
height=0.3\textheight, inner]{Achavanich750KCROPED2}} \\
\raisebox{-.1\height}{\includegraphics
[width=0.5\textwidth, height=0.3\textheight, inner]
{Achavanich300KCROPED}}&\raisebox
{-.1\height}{\includegraphics[width=0.5\textwidth, height=0.3\textheight,
inner]
{Achavanich100KCROPED}} \\
\end{tabular}
\end{center}
\end{table*}
\includegraphics 不支持 .tex 作为扩展名,即使 .tex 文件包含 \tikzpicture 命令块。
另一件重要的事情:我需要每个图形的标题和一个标签(用于交叉引用......)。
有什么想法可以实现吗?如果有更好的建议,我将不胜感激!
答案1
使用\input
而不是\includegraphics
。不要忘记设置图形块的适当宽度和高度
例子:
tikz(file="cars.tex", width=2, height=2)
par(mar=c(2,2,0.5,0.5))
plot(cars, xlab="", ylab="")
dev.off()
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tabular}{ll}
\input{cars} & \input{cars}\\
\input{cars} & \input{cars}
\end{tabular}
\end{document}