在下面的 MWE 中,我正在计算一些年度数据的百分比变化。当用下一行的值除以上一行的值时,第一行由于除以零而得到无穷大,并将无穷大符号输出到 Col1 和 Col2 的单元格中。我该如何清空这些单元格或至少用破折号替换无穷大?
\documentclass{scrartcl}
\usepackage[top=1in,bottom=1in,left=1in,right=1in]{geometry}
\usepackage{tikz}
\usetikzlibrary{arrows,calc,angles,quotes,intersections,decorations.pathmorphing,positioning,matrix,fit}
\usepackage{filecontents,pgfplotstable,pgfplots,booktabs}
\pgfplotsset{compat=newest}
\begin{document}
\begin{filecontents*}{healthcare.txt}
x Col1 Col2
2010 597.5 392.3
2011 615.1 400.9
2012 628.7 410.2
2013 634.3 417.2
2014 644.4 422.6
\end{filecontents*}
\pgfplotstableread{healthcare.txt}\datatable
\pgfplotstablecreatecol[expr={(\thisrow{Col1}-\prevrow{Col1})*100/\prevrow{Col1}}]{Col3}{\datatable}
\pgfplotstablecreatecol[expr={(\thisrow{Col2}-\prevrow{Col2})*100/\prevrow{Col2}}]{Col4}{\datatable}
\pgfplotstabletypeset[
every head row/.style={before row={\toprule},after row=\midrule},
columns/x/.style={column name=Year,1000 sep={}},
columns/Col1/.style={column name=Col1,1000 sep={}},
columns/Col2/.style={column name=Col2,1000 sep={}},
columns/Col3/.style={column name=Col3,1000 sep={}},
columns/Col4/.style={column name=Col4,1000 sep={}},
]{\datatable}
\end{document}
我尝试skip
ping 表中的行,empty cells with
但此用例需要一些不同的东西。我浏览了 PGFPlotstable 手册的第 40-50 页,但立即想到了这一点。
答案1
该clear infinite
密钥将使这些单元格清空。
\documentclass{scrartcl}
\usepackage{filecontents,pgfplotstable,booktabs}
\pgfplotsset{compat=newest}
\begin{document}
\begin{filecontents*}{healthcare.txt}
x Col1 Col2
2010 597.5 392.3
2011 615.1 400.9
2012 628.7 410.2
2013 634.3 417.2
2014 644.4 422.6
\end{filecontents*}
\pgfplotstableread{healthcare.txt}\datatable
\pgfplotstablecreatecol[expr={(\thisrow{Col1}-\prevrow{Col1})*100/\prevrow{Col1}}]{Col3}{\datatable}
\pgfplotstablecreatecol[expr={(\thisrow{Col2}-\prevrow{Col2})*100/\prevrow{Col2}}]{Col4}{\datatable}
\pgfplotstabletypeset[
clear infinite,
every head row/.style={before row={\toprule},after row=\midrule},
columns/x/.style={column name=Year,1000 sep={}},
columns/Col1/.style={column name=Col1,1000 sep={}},
columns/Col2/.style={column name=Col2,1000 sep={}},
columns/Col3/.style={column name=Col3,1000 sep={}},
columns/Col4/.style={column name=Col4,1000 sep={}},
]{\datatable}
\end{document}