制作 tikzpicture 子图

制作 tikzpicture 子图

我正在尝试用我的条形图创建一个子图。但是,该\pgfplotstableread命令似乎妨碍了子图功能。任何帮助都非常感谢……提前谢谢!

\begin{figure}
\pgfplotstableread[col sep=comma]{
Test, 0
Rater1- Rater 2+ (Disagreement), 0.007
Rater1+ Rater 2- (Disagreement), 0.58
Rater1- Rater 2- (Agreement), 98.47
Rater1+ Rater 2+ (Agreement), 0.95
}
\piedata
\begin{subfigure}[b]{0.42\textwidth}
        \centering
        \resizebox{\linewidth}{!}{
\begin{tikzpicture}
\begin{axis}[
xbar,
xlabel={\% Observed},
yticklabels from table={\piedata}{[index]0},
ytick=data,
axis lines=left,
xmin=0,
enlarge y limits,
nodes near coords={\pgfmathprintnumber\pgfplotspointmeta\%}
]
\addplot table[x index=1,y expr=\coordindex] {\piedata};
\end{axis}
\end{tikzpicture}
\end{subfigure}
\begin{subfigure}[b]{0.42\textwidth}
        \centering
        \resizebox{\linewidth}{!}{
%%insert other subfigure here}
\end{subfigure}
\end{figure}

答案1

成功猜出您使用的包并纠正没有关闭两个包的错误后\resizebox,它就工作正常了。

}之后缺少一个\end{tikzpicture},第二个\resizebox也不完整(见评论)。

\documentclass{article}
\usepackage{tikz}
\usepackage{pgfplots}
\usepackage{pgfplotstable}
\usepackage{subcaption}
\begin{document}
\begin{figure}
\pgfplotstableread[col sep=comma]{
Test, 0
Rater1- Rater 2+ (Disagreement), 0.007
Rater1+ Rater 2- (Disagreement), 0.58
Rater1- Rater 2- (Agreement), 98.47
Rater1+ Rater 2+ (Agreement), 0.95
}
\piedata
\begin{subfigure}[b]{0.42\textwidth}
        \centering
        \resizebox{\linewidth}{!}{
\begin{tikzpicture}
\begin{axis}[
xbar,
xlabel={\% Observed},
yticklabels from table={\piedata}{[index]0},
ytick=data,
axis lines=left,
xmin=0,
enlarge y limits,
nodes near coords={\pgfmathprintnumber\pgfplotspointmeta\%}
]
\addplot table[x index=1,y expr=\coordindex] {\piedata};
\end{axis}
\end{tikzpicture}} % added } here to close the first \resizebox 
\end{subfigure}
\begin{subfigure}[b]{0.42\textwidth}
        \centering
        % and closed this one too
        \resizebox{\linewidth}{!}{insert other subfigure here}
\end{subfigure}
\end{figure}
\end{document}

顺便说一句:这些事情的常见错误信息是

File ended while scanning use of ...

后面跟着一些命令名,大多数用户可能不知道这些命令名。但它告诉你,有些东西没有关闭。要获得问题所在,你应该查看日志文件本身。TeXStudio 和其他 TeX IDE 往往只在错误选项卡中讲述一半的故事。在日志文件中(显示在日志选项卡中,通过选择错误选项卡中的错误转到那里,然后切换到日志选项卡),错误如下所示:

Runaway argument?
{ \begin {tikzpicture} \begin {axis}[ xbar, xlabel={\% Observed}, yti\ETC.
! File ended while scanning use of \Gscale@box@dd.
...

有趣的部分是 之前的行File ended ...。它是参数的开头,没有以 结束}。这里没有换行符,但通常在源代码中找到它就足够了。

相关内容