我在文本文件中有一个参数,我想使用这些参数创建图例。我尝试使用
\pgfplotstableread{param.txt}{\myparams}
并获取特定参数
\pgfplotstablegetelem{0}{0}\of{\myparams}
然后使用设置宏
\pgfmathsetmacro\parA{\pgfplotsretval}
并使用创建图例条目
\addlegendentry{\pgfmathprintnumber[precision=5,use comma]{\parA}}
我曾尝试使用\foreach
命令和简单的复制粘贴来执行此操作,但都没有成功。
一个条目由表中的多个不同元素组成。
答案1
你的意思是......之类的吗?
% create a dummy file with some values
\begin{filecontents}{param.txt}
0.1 0.2 0.3
0.4 0.5 0.6
\end{filecontents}
\documentclass[border=2pt]{standalone}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
% read the data table
\pgfplotstableread{param.txt}{\myparams}
\begin{axis}
% create a loop and specify some indices that can be found
% in the data file
\foreach \i/\j in {
0/0,
1/1,
0/2%
}{
% read the element in the data table and store it in `\param'
\pgfplotstablegetelem{\i}{\j}\of{\myparams}
\pgfmathsetmacro{\param}{\pgfplotsretval}
% now create the plot and the corresponding legend entry
\addplot {\param};
\addlegendentryexpanded{%
\pgfmathprintnumber[precision=5,use comma]{\param}
}
}
\end{axis}
\end{tikzpicture}
\end{document}