tikzpicture 中使用 sci 数字格式的刻度进行零填充

tikzpicture 中使用 sci 数字格式的刻度进行零填充

这与上一个问题

\documentclass[border=2mm,tikz]{standalone}
\usepackage{pgfplots}

\begin{document}
\begin{tikzpicture}
\begin{axis}[
      y tick label style={/pgf/number format/.cd,%
          scaled y ticks = false,
          fixed},
      x tick label style={/pgf/number format/sci,
        /pgf/number format/precision=3,
        /pgf/number format/fixed zerofill,
        anchor=north west}%
     ]
  \addplot coordinates {
  (0.1,1000)
  (0.2,1100)
  (0.3,1200)
  };    
\end{axis}
\end{tikzpicture}
\end{document}

x 轴刻度为:

1 x 10^{-1}
1.5 x 10^{-1}
2 x 10^{-1}

使用上述代码,无论 的值如何,结果都是如此/pgf/number format/precision

我希望有/pgf/number format/precision=3

1.000 x 10^{-1}
1.500 x 10^{-1}
2.000 x 10^{-1}

这怎么可能呢/pgf/number format/sci

答案1

您可能正在寻找sci zerofill。 只是在您的设置中标签重叠了。 我添加了一个可能的方法来解决这个问题,即扩大绘图范围并拨打一些xtick distance。 (奇怪的是,即使将兼容性设置为 似乎1.17也无法自动解决此问题,这可能表明我缺少一些基本的东西。)

\documentclass[border=2mm,tikz]{standalone}
\usepackage{pgfplots}
%\pgfplotsset{compat=1.17} %<-consider adding
\begin{document}
\begin{tikzpicture}
\begin{axis}[width=12cm,
      y tick label style={/pgf/number format/.cd,%
          scaled y ticks = false,
          fixed},xtick distance=0.05,
      x tick label style={/pgf/number format/sci,
        /pgf/number format/precision=3,
        /pgf/number format/sci zerofill,
        anchor=north west}%
     ]
  \addplot coordinates {
  (0.1,1000)
  (0.2,1100)
  (0.3,1200)
  };    
\end{axis}
\end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容