pgfplots:分数中的 xticklabels 和 yticklabels

pgfplots:分数中的 xticklabels 和 yticklabels

如何正确地将 xticklabels 和 yticklabels 放在分数中?

\documentclass{article}
\usepackage{pgfplots}
\let\ds\displaystyle

\begin{document}
\begin{tikzpicture}
\begin{axis}[
    scale only axis,
    axis lines=middle,
    inner axis line style={=>},
    xlabel={\large $x$},
    ylabel={\large $y$},
    xticklabel style={inner xsep=0pt, anchor=south west},
    yticklabel style={inner ysep=0pt, anchor=south west},
    xtick={-0.5,2},
    ytick={-0.25},
    yticklabels={$\ds -\frac{1}{4}$},
    xticklabels={$\ds -\frac{1}{2}$,$2$},
    ymin=-5,
    ymax=6,
    xmin=-5,
    xmax=5,
    samples=50
]
\addplot[color=blue,thick] {(x + 1 / 2) / (x - 2)};
\end{axis}
\end{tikzpicture}

\end{document}

在此处输入图片描述

答案1

最简单的方法是

xticklabel style={/pgf/number format/.cd,frac,frac TeX=\ds\frac,frac denom=2},
yticklabel style={/pgf/number format/.cd,frac,frac TeX=\ds\frac,frac denom=4},

对于分母为 2 的 x 刻度和分母为 4 的 y 刻度。frac TeX接受用于排版分数的宏 - 我已\ds在此处添加了您的指令。

该方法在pgfplots手动的,读者可以参考pgfplotstable手动的了解详细信息。

我还调整了刻度标签的对齐方式/填充,以尽量减少冲突:

\documentclass{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.11}
\let\ds\displaystyle

\begin{document}
\begin{tikzpicture}
\begin{axis}[
    scale only axis,
    axis lines=middle,
    inner axis line style={=>},
    xlabel={\large $x$},
    ylabel={\large $y$},
    xticklabel style={inner xsep=0pt, anchor=north east},
    yticklabel style={inner xsep=0pt, anchor=south east},
    xtick={-0.5,2},
    ytick={-0.25},
    xticklabel style={/pgf/number format/.cd,frac,frac TeX=\ds\frac,frac denom=2},
    yticklabel style={/pgf/number format/.cd,frac,frac TeX=\ds\frac,frac denom=4},
    ymin=-5,
    ymax=6,
    xmin=-5,
    xmax=5,
    samples=50
]
\addplot[color=blue,thick] {(x + 1 / 2) / (x - 2)};
\end{axis}
\end{tikzpicture}

在此处输入图片描述

相关内容