Как создать сетку из концентрических окружностей для полярной плоскости?

Как создать сетку из концентрических окружностей для полярной плоскости?

Но мне нужно разграничить круги для x, y в [-2,6].

\begin{tikzpicture}
\draw[yellow!10, fill=hkvbluelogo!5](-2, -2) rectangle (6, 6);
\foreach \s in {0, 1, 2} {
  \draw [lightgray] (0,0) circle (\s + 0.5);
  \draw (0,0) circle (\s);
  \draw [thick,color=red,domain=0:2*pi,samples=200,smooth] plot (xy polar cs:angle=\x r,radius=\s );
}
\end{tikzpicture}

Я хочу, чтобы круги были нарисованы только на серой части.

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

решение1

Используйте \clip <path>;в качестве первой команды внутри scopeсреды, содержащей контент, который необходимо обрезать (в данном случае круги).

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

\documentclass[tikz,border=2pt]{standalone}

\begin{document}
\begin{tikzpicture}
\draw[yellow!10, fill=blue!10](-2, -2) rectangle (6, 6);
\begin{scope}
\clip (-2, -2) rectangle (6, 6);
\foreach \s in {0, 1, 2} {
  \draw [lightgray] (0,0) circle (\s + 0.5);
  \draw (0,0) circle (\s);
  \draw [thick,color=red,domain=0:2*pi,samples=200,smooth] plot (xy polar cs:angle=\x r,radius=\s );
}
\end{scope}
\end{tikzpicture}
\end{document}

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

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