这与上一个问题:
\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}