tikz График масштабирован до точки

tikz График масштабирован до точки

У меня был график, который, как я помню, прекрасно работал в прошлом, и вдруг я заметил, что все масштабируется до крошечной точки внизу оси Y. Я не уверен, изменилось ли что-нибудь вообще, и не могу найти проблему.

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

\begin{tikzpicture}
    \begin{axis}[
            axis lines = middle,  %% instead of above two lines this one is enough
            scaled ticks=false,
            axis equal,
            scale=0.5,
            y=1cm,
            x=3cm,
            grid=none,
            xmax=2.5,xmin=-0.01,
            ymin=-1,ymax=5.2,
            xlabel=$x$,ylabel=$y$,
            xtick={0,0.5,1,1.5,2},
            ytick={-1,0,1,2,3,4},
            ylabel = $U(r)$,
            xlabel = $r(r_M)$,
        ]
        \draw[red, thick] (0, 5)--(0, 0)--(2.5, 0);
        \draw[domain=0.84:2.5,smooth,variable=\x,blue, thick] plot ({\x},{0.1*\x^(-12)-0.1*\x^(-6)});
    \end{axis}
\end{tikzpicture}

решение1

Начиная с pgfplotsверсии 1.11 axis csэто система координат по умолчанию. Но вы должны установить как минимум 1.11как compatнемедленно после загрузки пакета pgfplots. Если вы не установите значение для compatтогда pre 1.3используется.

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

\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{compat=1.15}% comment this to see the issue
\begin{document}
\begin{tikzpicture}
    \begin{axis}[
            axis lines = middle,  %% instead of above two lines this one is enough
            scaled ticks=false,
            axis equal,
            scale=0.5,
            y=1cm,
            x=3cm,
            grid=none,
            xmax=2.5,xmin=-0.01,
            ymin=-1,ymax=5.2,
            xlabel=$x$,ylabel=$y$,
            xtick={0,0.5,1,1.5,2},
            ytick={-1,0,1,2,3,4},
            ylabel = $U(r)$,
            xlabel = $r(r_M)$,
        ]
        \draw[red, thick] (0, 5)--(0, 0)--(2.5, 0);
        \draw[domain=0.84:2.5,smooth,variable=\x,blue, thick] plot ({\x},{0.1*\x^(-12)-0.1*\x^(-6)});
    \end{axis}
\end{tikzpicture}
\end{document}

Но я бы использовал

\plot[domain=0.84:2.5,blue, thick] {0.1*x^(-12)-0.1*x^(-6)};

вместо второй \drawкоманды.

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