![如何用颜色填充该区域?](https://linux22.com/image/343611/%E5%A6%82%E4%BD%95%E7%94%A8%E9%A2%9C%E8%89%B2%E5%A1%AB%E5%85%85%E8%AF%A5%E5%8C%BA%E5%9F%9F%EF%BC%9F.png)
我有以下非常简单的图表:
\begin{center}
\begin{tikzpicture}
\draw[thick,->] (0,-1)--(0,1) node[anchor=south east] {};
\draw[thick,->] (-1,0)--(1,0) node[anchor=north west] {};
\draw (-2,-2)--(2,2) node[anchor=north west] {};
\draw (-2,2)--(2,-2) node[anchor=north west] {};
\end{tikzpicture}
\end{center}
这会在 xy 平面上产生两个圆锥体。我该如何为这两个区域着色?
答案1
正如 Thruston 在评论中所说,您可以将该\fill
命令与闭合路径一起使用来为区域着色。您还可以使用\draw[fill=<colour>]
和许多其他 tikz 命令fill=...
作为参数接受。
要向图片添加文本\node
,您可以使用使用语法的命令
\node at (x,y)[options]{text};
或者,几乎等效地,您可以使用:
\draw[draw options] (x,y) node[node options]{text};
\node
有关和的各种选项,\draw
请参阅蒂克兹手动的。
目前尚不清楚您想要为哪些区域着色,因此以下代码将对所有区域进行着色:
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\foreach \ang/\col in {0/red,1/green,2/blue,3/yellow} {
\fill[\col!20] (45+90*\ang:2.8)--(0,0)--(45+90*\ang+90:2.8)--cycle;
}
\draw[thick,->] (0,-1)--(0,1);
\draw[thick,->] (-1,0)--(1,0);
\draw (-2,-2)--(2,2);
\draw (-2,2)--(2,-2);
\node at (0,1.5)[blue]{Some nice text};
\end{tikzpicture}
\end{document}
请注意,您需要先为该区域着色,以便颜色位于绘图其余部分的“下方”。对于更复杂的绘图,您可能需要 tikzbackgrounds
库。
上面的代码给出: