
Приведенный код предписывает 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}