假设我有一个文件numbers.txt
,其内容是
x y
1 2
3 4
50 20
我想使用 将其放入表中pgfplotstable
,但尽管这些数字可以更改,但我希望有一个包含行名称的附加列(这些只是数学符号)。我的 txt 文件中的实际数字会时常更改,但它们所代表的内容将保持不变。我想要的是一种将此 txt 文件(即我的“数据”)与另一个包含行名称的输入相结合的方法。
这是一个例子。我可以使用 pgfplotstable 轻松创建第一个表,但我真正想要的是第二个表。
\documentclass{article}
\usepackage[english]{babel}
\usepackage{lmodern}
\usepackage{amsmath}
\usepackage{pgfplotstable}
\begin{document}
\begin{table}
\centering
\pgfplotstabletypeset{numbers.txt}
\caption{pgfplotstable}
\end{table}
\begin{table}
\centering
\begin{tabular}{ccc}
& x & y \\
$\lambda$ & 1 & 2 \\
$\beta$ & 3 & 4 \\
$\gamma$ & 50 & 20
\end{tabular}
\caption{Target table}
\end{table}
\end{document}
然后,我的目标是使用 pgfplotstable 将我的 txt 文件与这些行名合并。我该怎么做?我尝试过只添加一个带有$\lambda$
,$\beta$
和$\gamma$
(也括在花括号中)的列,然后从那里开始,但这似乎不起作用(我假设数学内容在解释它时会产生一些问题)。
答案1
您可以在文档的某个位置创建并存储符号列,甚至可以从文本文件中读取它。
\documentclass{standalone}
\usepackage{pgfplotstable,filecontents}
\begin{filecontents*}{data.txt}
x y
1 2
3 4
50 20
\end{filecontents*}
\pgfplotstableset{
create on use/symb/.style={
create col/set list={$\alpha$,$\beta$,$\gamma$}
},
columns/symb/.style={string type}
}
\begin{document}
\pgfplotstabletypeset[
columns={symb,x,y},
]{data.txt}
\end{document}