我使用 pgfplotstable 绘制了一个小数位多于 1 的数据表,但是,我只想显示 1 位小数,因此我使用precision=1
,它效果很好,除了小数位为 0 的情况。虽然我说了,但它不显示 14.0,只显示 14 precision=1
。
以下是 MWE:
\documentclass{article}
\usepackage{mwe}
\usepackage{tikz,pgfplotstable}
\pgfplotsset{compat=newest}
\begin{document}
This is what I get from pgfplotstable:
\pgfplotstabletypeset[col sep=comma, row sep=\\,precision=1,column type={r}
]{
a, b, c\\
17.82, 7.51, 7.62\\
17.02, 14.02, 12.01\\
19.43, 6.03, 4.52\\
18.03, 7.41, 6.81\\
}
This is what I want:
\begin{tabular}{rrr}
a& b& c\\
17.8& 7.5& 7.6\\
17.0&14.0& 12.0\\
19.4& 6.0& 4.5\\
18.0& 7.4& 6.8\\
\end{tabular}
\end{document}
如何告诉 pgfplotstable 打印 .0?
答案1
tikz-pgf,pgf图, 和pgfplotstable使用相同的数字打印系统,人们可以在两者中找到详细的解释tikz-pgf和pgfplotstable的文件。
/pgf/number format/fixed
将数字四舍五入为句点后的固定位数,丢弃所有尾随的零。4.57 0 0.1 24,415.98 123,456.12
/pgf/number format/fixed zerofill={⟨boolean⟩}
启用或禁用以定点格式绘制的任何数字的零填充。4.57 0.00 0.10 24,415.98 123,456.12
/pgf/number format/sci
配置\pgfmathprintnumber
为以科学格式显示数字,即符号、尾数和指数(以 10 为基数)。尾数四舍五入为所需精度(或科学精度,见下文)。4.57·10 0 5·10 -4 1·10 -1 2.44·10 4 1.23·10 5
/pgf/number format/sci zerofill={⟨boolean⟩}
启用或禁用以科学格式绘制的任何数字的零填充。4.57·10 0 5.00·10 -4 1.00·10 -1 2.44·10 4 1.23·10 5
/pgf/number format/zerofill={⟨boolean⟩}
同时设置fixed zerofill
和sci zerofill
。
阅读文档以了解更多选项。
对于你的情况,写作
\pgfplotstabletypeset[col sep=comma, row sep=\\,precision=1,
fixed zerofill, column type={r}]
将会完成这项工作。