我正在导入这种类型的矩阵:
0 1 0 0 0 -1 0
0 1 0 1 0 0 0
0 0 -1 0 1 0 0
我想添加一个标题行和一个索引列,使其看起来如下所示:
e1 e2 x1 x2 x3 x4 x5
y1 0 1 0 0 0 -1 0
y2 0 1 0 1 0 0 0
y3 0 0 -1 0 1 0 0
我一直在努力尝试使用 pgfplots 表,但没有取得任何有用的成果。
欢迎任何想法。
答案1
随意添加更多行或列
\documentclass[border=5pt, varwidth]{standalone}
\usepackage{pgfplotstable}
\pgfplotstableread[]{
0 1 0 0 0 -1 0
0 1 0 1 0 0 0
0 0 -1 0 1 0 0
}\test
\pgfplotstablegetrowsof{\test}
\pgfmathsetmacro\LastRow{\pgfplotsretval}
\pgfplotstablegetcolsof{\test}
\pgfmathsetmacro\LastColNo{\pgfplotsretval-1}
\begin{document}
Old: \pgfplotstabletypeset[every head row/.style={output empty row}]{\test}
\bigskip
% Specify head row
\pgfplotsinvokeforeach{0,1} {%
\pgfplotstableset{
columns/#1/.style = {column name=$e_{\pgfmathparse{int(#1+1)} \pgfmathresult}$},
}}%
\pgfplotsinvokeforeach{2,...,\LastColNo} {%
\pgfplotstableset{
columns/#1/.style = {column name=$x_{\pgfmathparse{int(#1-1)} \pgfmathresult}$},
}}%
% Create new column
\pgfplotstableset{
create on use/newcol/.style={
create col/set list={1,...,\LastRow}
},
columns/newcol/.style={column name={},
postproc cell content/.style={@cell content=$y_{##1}$}
},
}
New: \pgfplotstabletypeset[columns={newcol,0,1,...,\LastColNo},
column type=r, %string type,
]{\test}
\end{document}