我有这段代码。如果我没有“clip=false”,它将创建一个漂亮的图形,但是一旦我添加它,整个图形就会完全扭曲。为什么会发生这种情况?我想在轴外放置一个文本“A text”。
\documentclass{article}
\usepackage[margin=0.25in]{geometry}
\usepackage{pgfplots}
\pgfplotsset{width=10cm,compat=1.9}
\begin{document}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%5
\begin{tikzpicture}
\begin{axis}[
axis lines = left,
x label style={at={(axis description cs:1,0)},anchor=north},
y label style={at={(axis description cs:-0.05,1.05)},rotate=270,anchor=north},
ymin=0, ymax=3,
xmin=0, xmax=3,
ticks=none,
clip=false
]
%Below the red parabola is defined
\addplot [
domain=0:3,
samples=100,
y domain=0:3,
]
{1/x};
\node[] at (axis cs: -0.14,1.2) {$A text$};
\end{axis}
\end{tikzpicture}
\end{document}
答案1
PGFPlotscompat=1.9
确实很旧。y 轴附近的图很大,因此您需要restrict y to domain
。y domain
因为您的图没有意义,因为它不是 3D 中的 2D 图。$A text$
是数学!它的意思是 A*t*e*x*t - 这就是为什么“A”和“文本”之间没有空格。不要使用axis cs:
- 它是新版本 PGFPlots 的默认设置。
\documentclass[border=1 cm]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.18}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
axis lines = left,
xmin=0, xmax=3,
ymin=0, ymax=3,
ticks=none,
clip=false,
restrict y to domain=0:3,
]
\addplot[
red,
domain=0:3,
samples=100,
]
{1/x};
\node[] at (-0.14,1.2) {$A text$};
\end{axis}
\end{tikzpicture}
\end{document}