在 pgfplots 中稍微移动 x 轴或 y 轴刻度标签

在 pgfplots 中稍微移动 x 轴或 y 轴刻度标签

在下面的 MWE 中,我想移动 x 轴标签轻微地水平方向彼此远离,y 轴标签轻微地垂直方向彼此远离,以避免重叠。我该怎么做?

在此处输入图片描述

我尝试\quad在第一个中添加一个extra x tick label,这或多或少起到了作用,但似乎不够雅致,而且它对 y 轴不起作用。

\documentclass{standalone}
\usepackage{tikz}
\usepackage{pgfplots}
\pgfplotsset{compat=1.10}

\begin{document}

\begin{tikzpicture}

    \newcommand\CONSTH{326.4887}
    \newcommand\CONSTS{205.0669}
    \newcommand\CONSTgS{193.1713}   
    \newcommand\CONSTHd{300}        
    \newcommand\CONSTmu{200}    

    \begin{axis}[
        axis lines=left,
        scaled ticks=false,
        xtick=\empty,
        ytick=\empty,
        xmin=165,
        xmax=250,
        ymin=0,
        extra x ticks={\CONSTmu, \CONSTS}, 
        extra x tick labels={$\lambda L$, $S^*$},
        extra y ticks={\CONSTH, \CONSTHd},
        extra y tick labels={$H(Q)$, $H_d(Q)$}
    ]

    \addplot[ticks=none] coordinates {(170,400) (\CONSTmu,0) (245,400)};
    \addplot[ticks=none,domain=170:245] {0.1*(x-\CONSTS)^2 + \CONSTgS}; 

    % x axis labels
    \addplot[dashed]
    coordinates {(\CONSTS,0) (\CONSTS,\CONSTgS)};

    % y axis labels
    \addplot[dashed]
    coordinates {(0,\CONSTH) (245,\CONSTH)};
    \addplot[dashed]
    coordinates {(0,\CONSTHd) (245,\CONSTHd)};

    \end{axis}

\end{tikzpicture}

\end{document}  

编辑:用公式替换表格中的数据。

答案1

您可以使用\raisebox移动包含 y 刻度标签的框,对于 x 刻度标签,您可以按照您提到的那样使用,\quad或者移动两个 x 刻度标签\kern

\documentclass{standalone}
\usepackage{tikz}
\usepackage{pgfplots}
\pgfplotsset{compat=1.10}

\begin{document}

\begin{tikzpicture}

    \newcommand\CONSTH{326.4887}
    \newcommand\CONSTS{205.0669}
    \newcommand\CONSTgS{193.1713}   
    \newcommand\CONSTHd{300}        
    \newcommand\CONSTmu{200}    

    \begin{axis}[
        axis lines=left,
        scaled ticks=false,
        xtick=\empty,
        ytick=\empty,
        xmin=165,
        xmax=250,
        ymin=0,
        extra x ticks={\CONSTmu, \CONSTS}, 
        extra x tick labels={\kern-1mm $\lambda L$,\kern1mm $S^*$},
        extra y ticks={\CONSTH, \CONSTHd},
        extra y tick labels={\raisebox{2mm}{$H(Q)$},\raisebox{-3mm}{$H_d(Q)$}},
        ]

    \addplot[ticks=none] coordinates {(170,400) (\CONSTmu,0) (245,400)};
    \addplot[ticks=none,domain=170:245] {0.1*(x-\CONSTS)^2 + \CONSTgS}; 

    % x axis labels
    \addplot[dashed]
    coordinates {(\CONSTS,0) (\CONSTS,\CONSTgS)};

    % y axis labels
    \addplot[dashed]
    coordinates {(0,\CONSTH) (245,\CONSTH)};
    \addplot[dashed]
    coordinates {(0,\CONSTHd) (245,\CONSTHd)};

    \end{axis}

\end{tikzpicture}
\end{document}

输出

在此处输入图片描述

相关内容