Маркировка делений в стиле скрипта и размещение стрелок на линии с помощью команды addplot

Маркировка делений в стиле скрипта и размещение стрелок на линии с помощью команды addplot

Приведенный код предписывает TikZ построить график для y = (x^{2} - 4)/(x + 2). Необходимо внести несколько изменений. График выглядит как линия y = x - 2. Как мне получить наконечники стрелок на обоих концах графика этой функции?

Как мне расположить метку $x$ на оси x ниже и немного правее правого наконечника стрелки, и как мне расположить метку $y$ на оси y выше и немного правее верхнего наконечника стрелки? Как мне набрать отметку "-2" в scriptstyleбелом поле - я не хочу, чтобы пунктирная линия между точками (-2,0) и (-2,-4) была нарисована поверх нее. Как мне укоротить ось y? Она нарисована слишком низко.

У меня в коде есть две команды для осей: xmax=8,ymax=7и restrict y to domain=-7:10. Что они предписывают TikZ рисовать? Почему нет команд xminи ymin?

\documentclass[10pt]{amsart}
\usepackage{tikz}
\usepackage{pgfplots}
\pgfplotsset{compat=1.11}

\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{amsthm}


\begin{document}

\hspace*{\fill}
\begin{tikzpicture}
\begin{axis}[axis equal image,
          xmax=8,ymax=7,
          axis lines=middle,
          restrict y to domain=-7:7,
          enlargelimits={abs=1cm},
          axis line style={latex-latex},
          ticklabel style={fill=white},
          ytick=\empty,
          xtick={-2}
          %xlabel=$x$,ylabel=$y$,
]
\addplot[domain=-10:10,mark=none,samples=10] {x - 2} node [above left, yshift=3pt]{$\scriptstyle{y}=\frac{x^{\scriptscriptstyle{2}} - 4}{x + 2}$};
\draw [thin,dashed] (-2,0) -- (-2,-4);
\draw [fill=white] (-2,-4) circle [radius=1.5pt] node[left]{$\scriptstyle{(-2, \, -4)}$};
\end{axis}
\end{tikzpicture}
\hspace{\fill}

\end{document}

решение1

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

  • Наконечники стрел: по сути тот же метод, который вы использовали для осей, добавьте <->к \addplotпараметрам.
  • Положение меток осей: изменить якоря с помощью

    xlabel style={anchor=north west},
    ylabel style={anchor=south west}
    
  • Размер шрифта Ticklabel: добавить font=\scriptsizeв ticklabel style.
  • Метка под линией: простой способ — добавить axis on topк axisопциям.
  • xmin/ ymin: Я не понимаю, почему вы говорите, что этих ключей нет. Они есть. А настройка ymin— это то, как вы укоротите ось Y.
  • restrict y to domain: я думаю, что делает именно то, что написано, отфильтровывает значения Y за пределами заданного домена.

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

\documentclass[10pt]{amsart}
\usepackage{pgfplots}
\pgfplotsset{compat=1.11}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
          axis on top, % added
          axis equal image,
          xmax=8,ymax=7,
          xmin=-3,ymin=-4,
          axis lines=middle,
          restrict y to domain=-7:7,
          enlargelimits={abs=1cm},
          axis line style={latex-latex},
          ticklabel style={fill=white,font=\scriptsize}, % added font
          ytick=\empty,
          xtick={-2},
          xlabel=$x$,ylabel=$y$,
          xlabel style={anchor=north west}, % added
          ylabel style={anchor=south west}, % added
]
\addplot[domain=-10:10,mark=none,samples=10,<->] {x - 2} node [above left, yshift=3pt]{$\scriptstyle{y}=\frac{x^{\scriptscriptstyle{2}} - 4}{x + 2}$};
\draw [thin,dashed] (-2,0) -- (-2,-4);
\draw [fill=white] (-2,-4) circle [radius=1.5pt] node[left]{$\scriptstyle{(-2, \, -4)}$};
\end{axis}
\end{tikzpicture}
\end{document}

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