Набрать деления на оси таким образом, чтобы пространство, занимаемое знаком «минус», игнорировалось

Набрать деления на оси таким образом, чтобы пространство, занимаемое знаком «минус», игнорировалось

Ошибка в следующем коде, по-видимому, связана со следующими параметрами, указанными в axisфайле pgfplot.

ticklabel style={font=\tiny,fill=none},
extra x ticks={-3.14159, -1.5708, 1.5708, 3.14159},
extra x tick labels={${\makebox[0pt][r]{\tiny-}$\pi$}$, $-\frac{\pi}{2}$, $\frac{\pi}{2}$, $\pi$},

Я не хочу, чтобы отрицательный знак в подписях первых двух делений вытеснил $\pi$ and $\frac{\pi}{2}$.

Что не так с этим кодом? Как мне сделать набор шрифтом со знаком минус \tiny? Будет ли вставлен соответствующий пробел между знаком минус и $\pi$и $\frac{\pi}{2}$?

\documentclass{amsart}
\usepackage{amsmath}
\usepackage{amsfonts}

\usepackage{tikz}
\usetikzlibrary{calc,positioning}


\usepackage{pgfplots}
\pgfplotsset{compat=1.11}


\begin{document}


\begin{tikzpicture}
\begin{axis}[width=3in,axis on top,clip=false,
    axis lines=middle,
    xmin=-3.75,xmax=3.75,
    domain=-3.75:3.75,
    ymin=-0.25,ymax=2.25,
    restrict y to domain=-0.25:2.25,
    enlargelimits={abs=0.5cm},
    axis line style={latex-latex},
    ticklabel style={font=\tiny,fill=none},
    xtick={\empty},ytick={\empty},
    extra x ticks={-3.14159, -1.5708, 1.5708, 3.14159},
    extra x tick labels={${\makebox[0pt][r]{\tiny-}$\pi$}$, $-\frac{\pi}{2}$, $\frac{\pi}{2}$, $\pi$},
    extra y ticks={2},
    extra y tick style={y tick label style={anchor=south east}},
    xlabel=$x$,ylabel=$y$,
    xlabel style={at={(ticklabel* cs:1)},anchor=north west},
    ylabel style={at={(ticklabel* cs:1)},anchor=south west}
]

\addplot [samples=501, domain=-3.5:3.5, blue] {1 + cos(deg(x))};
\addplot [samples=2, latex-latex, domain=-3.5:3.5] {1};

\end{axis}
\end{tikzpicture}

\end{document}

решение1

Вам нужен математический режим -. Изменения размера должны быть вне математического режима, но здесь вам не нужно изменение размера.

введите описание изображения здесь

\documentclass{amsart}
\usepackage{amsmath}
\usepackage{amsfonts}

\usepackage{tikz}
\usetikzlibrary{calc,positioning}


\usepackage{pgfplots}
\pgfplotsset{compat=1.11}


\begin{document}


\begin{tikzpicture}
\begin{axis}[width=3in,axis on top,clip=false,
    axis lines=middle,
    xmin=-3.75,xmax=3.75,
    domain=-3.75:3.75,
    ymin=-0.25,ymax=2.25,
    restrict y to domain=-0.25:2.25,
    enlargelimits={abs=0.5cm},
    axis line style={latex-latex},
    ticklabel style={font=\tiny,fill=none},
    xtick={\empty},ytick={\empty},
    extra x ticks={-3.14159, -1.5708, 1.5708, 3.14159},
    extra x tick labels={$\llap{$-$}\pi$, $\llap{$-$}\frac{\pi}{2}$, $\frac{\pi}{2}$, $\pi$},
    extra y ticks={2},
    extra y tick style={y tick label style={anchor=south east}},
    xlabel=$x$,ylabel=$y$,
    xlabel style={at={(ticklabel* cs:1)},anchor=north west},
    ylabel style={at={(ticklabel* cs:1)},anchor=south west}
]

\addplot [samples=501, domain=-3.5:3.5, blue] {1 + cos(deg(x))};
\addplot [samples=2, latex-latex, domain=-3.5:3.5] {1};

\end{axis}
\end{tikzpicture}

\end{document}

Связанный контент