在 pgfplots 的右侧放置一些刻度标签

在 pgfplots 的右侧放置一些刻度标签

考虑以下情节。

\documentclass{scrartcl}

\usepackage{pgfplots}

\begin{document}

\begin{tikzpicture}
  \begin{axis} [
        width=5cm,
        height=7cm,
        domain=-90:90,
        xtick={-90, 0, 90},
        ytick={-1, .6, 1, -.2},
      ]
    \addplot {sin(x)};
    \addplot {.2 - .4*sin(x)};
  \end{axis}
\end{tikzpicture}

\end{document}

MWE 输出

假设我想让 y 坐标的刻度标签-10.6位于左侧,而 y 坐标的刻度标签-0.21位于右侧。我该怎么做?

答案1

您可以使用条件样式。在这里,我重新排列了刻度并使用轴width来指定xshift

% arara: lwpdflatex
\documentclass[tikz,margin=3pt]{standalone}

\usepackage{pgfplots}
\pgfplotsset{compat=1.17}
\begin{document}

\begin{tikzpicture}
    \begin{axis} [
            scale only axis,
            width=5cm,
            height=7cm,
            domain=-90:90,
            xtick={-90, 0, 90},
            ytick={-1,-0.2,0.6,1},
            every y tick label/.append style={
                xshift={isodd(\ticknum) ? \pgfkeysvalueof{/pgfplots/width} : "0pt"},
                anchor={isodd(\ticknum) ? 180 : 0}
            },
        ]
        \addplot {sin(x)};
        \addplot {.2 - .4*sin(x)};
    \end{axis}
\end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容