可以利用pgfplots的方法实现...建议参考pgfplots文档P104的做法。下面是MWE和效果。
\documentclass[12pt]{article}
\usepackage{tikz}
\usepackage{pgfplots}
\pgfplotsset{compat=1.18}
\usepgfplotslibrary{fillbetween}
\usepackage{amsmath}
\begin{document}
\begin{tikzpicture}[scale=1.5]
\begin{axis}[
axis lines=middle,
axis on top,
xtick = \empty,
ytick = \empty,
xlabel = {$x$},
ylabel = {$y$},
xmin=-2.0, xmax=2.0,
ymin=-2.5, ymax=2.5,
samples=1000]
\addplot[semithick,name path=A] ({x},{rad(atan(x))});
\path[name path=B] (0,pi/2) -- (1.8,pi/2);
\draw[dashed](-3,pi/2)--(3,pi/2)(-3,-pi/2)--(3,-pi/2);
\addplot[red!30,opacity=.3] fill between[of=A and B,soft clip={
(0,0) rectangle (1.8,2)
}];
\end{axis}
\end{tikzpicture}
\end{document}
问 latex绘图填充区域颜色问题