我怎样才能在 TikZ 中绘制这样的图片?
答案1
正如一条评论中提到的那样,可以在单独的 TikZ 环境中绘制两张图片。我编写了以下代码来生成所需的两张图片:
\documentclass{standalone}
\usepackage[utf8]{inputenc}
\usepackage{tikz}
\begin{document}
% First circle
\begin{tikzpicture}[very thick]
% draw each arc, rotated by the value stored in \a, filled with the color \c
\foreach \a/\c in {0/blue!50,90/red,180/blue!50,270/green}
% arc from 0 degrees to 90 degrees
\draw[fill=\c,rotate=\a] (0mm,0mm) -- (20mm,0mm) arc (0:90:20mm) -- cycle;
% arrow
\draw[-latex,rotate=135](0mm,0mm) -- (15mm,0mm);
\end{tikzpicture}
% Second circle
\begin{tikzpicture}[very thick]
\foreach \a/\c in {0/red,45/blue!50,90/red,135/blue!50,180/green,225/blue!50,270/green,315/blue!50}
\draw[fill=\c,rotate=\a] (0mm,0mm) -- (20mm,0mm) arc (0:45:20mm) -- cycle;
\draw[-latex,rotate=67.5](0mm,0mm) --(15mm,0mm);
\end{tikzpicture}
\end{document}
此代码产生以下输出:
我使用 foreach 循环分别绘制了填充的弧线,每个弧线都有自己的颜色。弧线按角度旋转\a
,颜色为\c
。当然,颜色和箭头形状可以事后调整。