如何正确地将 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}