子导入问题:tikz/addplot

子导入问题:tikz/addplot

我正在使用 subimport 来包含来自不同文件夹的 .tex 块。除了我的 tikz 图形之外,其他一切都似乎运行良好。这是一个最低限度的工作示例:

组织:

main.tex 
> Folder1 > chapter1.tex
          > data > turn_0.3.csv

我的 main.tex 文件:

\documentclass[conference]{IEEEtran}
\usepackage{pgfplots}
\usepackage{tikz}
\pgfplotsset{compat=newest} 
\pgfplotsset{plot coordinates/math parser=false}
\newlength\figurewidth

\usepackage{import}
\begin{document}

\subimport{folder1/}{chapter1}

\end{document}

第一章.tex:

\begin{figure}
\centering
\begin{tikzpicture}
\begin{axis}[
    width=0.8\columnwidth,
    height=0.5\columnwidth,
    scale only axis,
    xmin=0,
    xmax=120,
    grid=major,
    inner axis line style={->},
    xlabel={Time [s]},
    ylabel={Badnwidth Usage [B/s]},
    axis x line*=bottom,
axis y line*=left,
    no markers,
    smooth,
]
\addplot[solid] table [x index = 0, y index =1, col sep=semicolon, green] {data/turn_0_3.csv};
\addlegendentry{0.3 rad/s}
\end{axis}
\end{tikzpicture}
\caption{Network usage in bytes per second for a single robot performing a 360  [$^\circ$] in-place rotation.}
\label{rot_bandwidth}
\end{figure}

.csv 是由“;”分隔的 3 列。

我收到以下错误:

 Package pgfplots Error: Could not read table file 'data/turn_0_3.csv'. In case you intended to provide inline data: maybe TeX screwed up your end-of-lines? Try `row sep=crcr' and terminate your lines with `\\' (refer to the pgfplotstable manual for details).

我可以通过添加来解决这个问题

\makeatletter
   \def\relativepath{\import@path}
\makeatother

在 main.tex 中,将 \relativepath 附加到

\addplot[solid] table [x index = 0, y index =1, col sep=semicolon, green] {\relativepath data/turn_0_3.csv};

但我想要一个不需要修改 chapter1.tex 文件的解决方案。

感谢您的时间。

相关内容