如何单独更改边缘的颜色?我尝试了,to
但它忽略了颜色变化。另外,我希望出现箭头,比如说,如何纠正下一行以便得到一个四色正方形?(应该保留“向量加法”的精神。也就是说,我想在单个draw
或内生成一条长路径path
,因此只;
应出现一条。)
我也尝试使用“边缘”——也没有成功。
\documentclass[ border=2pt]{standalone}
\usepackage{tikz}
\begin{document}%
\begin{tikzpicture}
\draw (0,0) to[-latex,blue] ++(0,1)
to[-latex,red] ++(1,0)
to[-latex,yellow] ++(0,-1)
to[-latex,green] ++(-1,0) -- cycle;
\begin{scope}[xshift=1.5cm]
\path (0,0) to[-latex,gray] ++(0,1)
to[-latex,gray] ++(1,0)
to[-latex,gray] ++(0,-1)
to[-latex,gray] ++(-1,0) -- cycle;
\end{scope}
\end{tikzpicture}
\end{document}
答案1
钛钾Z、颜色和箭头对于路径来说是全局的。您需要使用不同的路径来获得不同的颜色或箭头(或线条样式,如虚线)。您可以使用分号edge
来避免使用分号,但这会创建不同的路径。请参阅https://tikz.dev/tikz-actions#sec-15.1。
使用边时,您应该记住该操作才不是影响主路径,但会创建另一条路径;具体来说,它不会移动当前点;在您的情况下,您想要移动它,因此您必须使用两次移动(一次指定端点edge
,另一次将路径移动到那里):
\documentclass[ border=2pt]{standalone}
\usepackage{tikz}
\tikzset{cedge/.style={draw=#1,
-latex}
}
\begin{document}%
\begin{tikzpicture}
\path (0,0) edge[cedge=blue] ++(0,1) ++(0,1)
edge[cedge=red] ++(1,0) ++(1,0)
edge[cedge=yellow] ++(0,-1) ++(0,-1)
edge[cedge=green] ++(-1,0) ++(-1,0) -- cycle;
\begin{scope}[xshift=1.5cm]
\path (0,0) edge[cedge=gray] ++(0,1) ++(0,1)
edge[cedge=gray] ++(1,0) ++(1,0)
edge[cedge=gray] ++(0,-1) ++(0,-1)
edge[cedge=gray] ++(-1,0) ++(-1,0) -- cycle;
\end{scope}
\end{tikzpicture}
\end{document}
如果您通过绘制更改第一个\path
并绘制“基本”路径,则可以通过查看角落来了解命令实际执行的操作:
\draw (0,0) edge[cedge=blue] ++(0,1) -- ++(0,1)
edge[cedge=red] ++(1,0) -- ++(1,0)
edge[cedge=yellow] ++(0,-1) -- ++(0,-1)
edge[cedge=green] ++(-1,0) -- ++(-1,0) -- cycle;