我想将这些数据集的回归斜率保存到另一张表中。我设法在 foreach 循环中的初始表中添加行,但添加图表不再起作用了……提前感谢您的建议。
\documentclass{article}
\usepackage{pgfplotstable}
\begin{document}
% data
\pgfplotstableread{
x y1 y2 y3
0 0.00 0.00 0.00
1 0.15 0.24 0.42
2 0.24 0.57 0.74
3 0.34 0.79 1.22
}\data
% slope data header
\pgfplotstableread{
N slope
}\slopedata
\begin{tikzpicture}
\begin{axis}
%loop
\pgfplotsinvokeforeach{1,...,3}{
\addplot+[only marks]
table [x=x,y index=#1]
{\data};
\addplot[no marks]
table [x=x,y={create col/linear regression={y=[index]#1}}]
{\data};
\edef\slope{\pgfplotstableregressiona}
% append new slope to slopedata
\pgfplotstableread[header=has colnames,col sep=comma,row sep=crcr]{
N,slope\\
#1,\slope\\
}\mynewrow
\pgfplotstablevertcat{\slopedata}{\mynewrow}
}
\end{axis}
\end{tikzpicture}
% Output
\pgfplotstabletypeset{\slopedata}
\end{document}