![如何使多条线精确地汇聚于轴上的一点?](https://linux22.com/image/237696/%E5%A6%82%E4%BD%95%E4%BD%BF%E5%A4%9A%E6%9D%A1%E7%BA%BF%E7%B2%BE%E7%A1%AE%E5%9C%B0%E6%B1%87%E8%81%9A%E4%BA%8E%E8%BD%B4%E4%B8%8A%E7%9A%84%E4%B8%80%E7%82%B9%EF%BC%9F.png)
我正在尝试使用 TikZ 制作一个序列/时间图,以显示精确时间协议中主从设备的同步过程。由于对 TikZ 还很陌生,我除了画线和放置节点的图元之外,对其他知识了解不多,但对于这样一个简单的图来说,这些知识似乎已经足够了。
我遇到的问题是,我无法弄清楚如何让线条和箭头精确地汇聚在轴上的一个点上。现在看起来是这样(不是实际的图表,但很接近):
快了:
如您所见,汇聚在 t 轴上的三条线之间有很大间隙。如何消除这些间隙并使这些线精确地汇聚在 t 轴上的一个点上?
或者有没有更好的方法来绘制这样的图表?
以下是 MWE:
\documentclass[]{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\draw [->,thick] (0,8) node (Master) [above] {Master} -- (0,0) node [below right] {t};
\draw [->,thick] (5,8) node (Slave) [above] {Slave} -- (5,0) node [below right] {t};
\node (t1) at (0,7) [left] {$t_1$};
\node (t2) at (5,6) [right] {$t_2$};
\node (t3) at (0,3) [left] {$t_3$};
\node (t4) at (5,1) [right] {$t_4$};
\draw[->] (t1) -- (t2);
\draw[->] (t2) -- (t3);
\draw[->] (t3) -- (t4);
\draw[very thin,dashed] (t2) -- ++(-6,0);
\draw[very thin,dashed] (t3) -- ++(6,0);
\draw[very thin,dashed] (t1) -- ++(6,0);
\draw[very thin,dashed] (t4) -- ++(-6,0);
\end{tikzpicture}
\end{document}
提前致谢!
答案1
我建议你这样做:
\draw[->] (t1.east) -- (t2.west);
\draw[->] (t2.west) -- (t3.east);
\draw[->] (t3.east) -- (t4.west);
结果如下
我建议你使用 latex 45 arrow 样式。再见