我需要添加一行自定义数据\pgfplotstable
用于绘图。注释行是所需的数据。我可以读取和操作表中的任何元素,但无法添加任何行。有什么建议吗?
\documentclass{article}
\usepackage{pgfplots}
\begin{document}
\pgfplotstableread{
s f
0.0 75.9638
0.380665 206.565
0.58711 243.435
0.793555 333.435
% 1.0 Element(1,2) + 360.0 = 75.9638 + 360.0
}\data
\end{document}
答案1
pgfplotstable
您可以向using添加新行\pgfplotstablevertcat
,它以两个表作为参数并连接两个表中找到的列:
\documentclass{article}
\usepackage{pgfplotstable}
\begin{document}
% Original data
\pgfplotstableread{
0.0 75.9638
0.380665 206.565
0.58711 243.435
0.793555 333.435
}\data
% Get column names
\pgfplotstablegetcolumnnamebyindex{0}\of{\data}\to{\firstcolumnname}
\pgfplotstablegetcolumnnamebyindex{1}\of{\data}\to{\secondcolumnname}
% Retrieve desired element
\pgfplotstablegetelem{1}{[index]1}\of\data
% Perform calculation, save to \result
\pgfmathsetmacro\result{\pgfplotsretval + 360}
% Assemble new line
\edef\createsumrow{\noexpand\pgfplotstableread[header=has colnames,col sep=comma,row sep=crcr]{
\firstcolumnname,\secondcolumnname\noexpand\\
1.0,\result\noexpand\\
}\sum}
\createsumrow
% Concatenate
\pgfplotstablevertcat{\data}{\sum}
% Output
\pgfplotstabletypeset{\data}
\end{document}