隐藏所有刻度标记(带有自定义标签的刻度标记除外)

隐藏所有刻度标记(带有自定义标签的刻度标记除外)

我看过很多类似的问题,但没有一个能准确描述我想要做的事情。我想隐藏轴上的所有刻度标记,只留下一个,在其下我有一个自定义标签。以下是 MWE:

\documentclass{article}

\usepackage{tikz}
\usepackage{pgfplots}
\pgfplotsset{compat=1.18}

\begin{document}
     \begin{tikzpicture}
            \begin{axis}[
                xticklabels = {}, xtick style = {draw=none},
                yticklabels = {}, ytick style = {draw=none},
                axis lines = middle, 
                ymin = -3, ymax = 3,  
                xmin = -3, xmax = 3,  
                extra x ticks={1},
                % extra x tick style = {grid=major},
                extra x tick labels = {$X_\alpha$}
                ]
            \end{axis}
        \end{tikzpicture}
\end{document}

上述代码的结果

删除整个轴上的刻度线很简单,但我想知道是否有办法排除特定的刻度线或稍后再添加回来。我能找到的最接近的方法是注释行,它添加了一条模糊的垂直线。

在此处输入图片描述

答案1

去除蜱虫的方法不是最好的。

xticklabels = {}, xtick style = {draw=none},
yticklabels = {}, ytick style = {draw=none},

不会去除蜱虫,但会隐藏它们,更喜欢

xtick = \empty,
ytick = \empty,

这样,意志extra x ticks就会得到它的标记。

对于您来说,您只需手动设置所需的刻度:

xtick = {1},
xticklabels={$X_\alpha$},

例子:

\documentclass{article}

\usepackage{tikz}
\usepackage{pgfplots}
\pgfplotsset{compat=1.18}

\begin{document}
     \begin{tikzpicture}
            \begin{axis}[
                xtick = {1,1.5},
                xticklabels={$X_\alpha$, $X_\beta$},
                ytick = \empty,
                axis lines = middle,
                ymin = -3, ymax = 3,
                xmin = -3, xmax = 3,
                ]
            \end{axis}
        \end{tikzpicture}
\end{document}

手动设置 x 标签

相关内容