pgfplotstable 中的数学符号

pgfplotstable 中的数学符号

假设我有一个文件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}

在此处输入图片描述

相关内容