当我使用 pgfplots 绘图并定义限制范围(xmin
等)并尝试在坐标系中绘制时,我必须在使用相对坐标时添加限制范围。我做错了什么吗?
\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{compat=1.11}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
x = 0.1cm,
y = 0.1cm,
domain = 0:60,
axis lines=center,
xmin = -9,
xmax = 69,
ymin = -9,
ymax = 49,
]
\addplot {40*0.9772^x};
\draw (0,20) -- (20,20);
\draw [red] (20,20) -- ++(0,-20);
\draw [green] (20,20) -- ++(-9,-29);
\end{axis}
\end{tikzpicture}
\end{document}
答案1
默认坐标系axis cs
在环境中axis
。它可用于绝对坐标。它不适用于相对坐标,因为原点可能与不同(0pt, 0pt)
。在本例中,它是不同的,你必须减去真实的原点。更简单的方法是使用axis direction cs
,它旨在相对的坐标:
\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{compat=1.11}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
x = 0.1cm,
y = 0.1cm,
domain = 0:60,
axis lines=center,
xmin = -9,
xmax = 69,
ymin = -9,
ymax = 49,
]
\addplot {40*0.9772^x};
\draw (0,20) -- (20,20);
\draw [red] (20,20) -- ++(axis direction cs:0,-20);
\end{axis}
\end{tikzpicture}
\end{document}