当 pgfplotstable 中的小数位为 0(零)时,如何显示小数位?

当 pgfplotstable 中的小数位为 0(零)时,如何显示小数位?

我使用 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

, 和使用相同的数字打印系统,人们可以在两者中找到详细的解释的文件。

  • /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 zerofillsci zerofill

阅读文档以了解更多选项。

对于你的情况,写作

\pgfplotstabletypeset[col sep=comma, row sep=\\,precision=1,
                      fixed zerofill, column type={r}]

将会完成这项工作。

相关内容