基线上的刻度标签对齐错误

基线上的刻度标签对齐错误

下面是一个示例,复制了我在使用该功能时遇到的问题xticklabels from table

\documentclass{article}

\usepackage{pgfplots}
\usepackage{tikz}

\usepackage{siunitx}

\begin{document}
\begin{tikzpicture}
  \begin{axis}[
    xtick={1e-4, .1, .3},
    xticklabels={\num{e-4}, .2, .3},
    ]
    \addplot[only marks] table[x=x, y=y] {
      x y
      -.3 .7
      .2 .1
      .5 .6
      0.4 -0.5
    };
  \end{axis}
\end{tikzpicture}
\end{document}

以及输出的图片:

示例输出

xticklabels 未正确对齐基线。我想我可以通过更改 xticklabels 属性或使用其他方式格式化数字来更正此问题。确保正确对齐的更好方法是什么?

答案1

text height您可以通过设置来修复xticklabel style={text height=2ex}

\documentclass{article}

\usepackage{pgfplots}
\usepackage{tikz}

\usepackage{siunitx}

\begin{document}
\begin{tikzpicture}
  \begin{axis}[
    xtick={1e-4, .1, .3},
    xticklabels={\num{e-4}, 0.2, 0.3},
    xticklabel style={text height=2ex}
    ]
    \addplot[only marks] table[x=x, y=y] {
      x y
      -.3 .7
      .2 .1
      .5 .6
      0.4 -0.5
    };
  \end{axis}
\end{tikzpicture}
\end{document}

答案2

有一个更好的答案— 只需添加样式typeset ticklabels with strut

答案3

我想到的最简单、最快的方法是添加幻象指数:

在此处输入图片描述

\documentclass{article}

\usepackage{pgfplots}
\usepackage{tikz}

\usepackage{siunitx}
\newcommand{\pe}[1]{$#1^{\vphantom{1}}$}

\begin{document}
\begin{tikzpicture}
  \begin{axis}[
    xtick={1e-4, .1, .3},
    xticklabels={\num{e-4}, \pe{0.2}, \pe{0.3}},
    ]
    \addplot[only marks] table[x=x, y=y] {
      x y
      -.3 .7
      .2 .1
      .5 .6
      0.4 -0.5
    };
  \end{axis}
\end{tikzpicture}
\end{document}

相关内容