为什么设置 x 标签的位置会导致 pgfplots 中这个半逻辑轴的标签发生移动?

为什么设置 x 标签的位置会导致 pgfplots 中这个半逻辑轴的标签发生移动?

我有两个具有相同线条的图;一个以标准比例绘制,一个以半对数 y 比例绘制。第二个图的 x 轴标签垂直偏移很大。我该如何修复这个问题?

\documentclass[varwidth]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.12}

\begin{document}
\begin{tikzpicture}
    \begin{axis}[
        ylabel={$p$},
        xlabel={$v$},
        x label style={at={(current axis.right of origin)}},
        y label style={at={(current axis.above origin)}, rotate=270,},
    ]
        \addplot+[no markers, domain=2.75:8] {114.795/x};
    \end{axis}
\end{tikzpicture}\\[10mm]
\begin{tikzpicture}
    \begin{semilogyaxis}[
        ylabel={$p$},
        xlabel={$v$},
        x label style={at={(current axis.right of origin)}},
        y label style={at={(current axis.above origin)}, rotate=270,},
    ]
        \addplot+[no markers, domain=2.75:8] {114.795/x};
    \end{semilogyaxis}
\end{tikzpicture}
\end{document}

问题图

答案1

对数轴的原点为零(参见图例log origin)。因此标签被移至不可见的原点1。作为验证,如果我将域增加到domain=2.75:1000,则得到

在此处输入图片描述

而是使用节点的另一个锚点(或相对于该锚点)current axis,例如,

    x label style={at={(current axis.south east)}},

给出

在此处输入图片描述

相关内容