答案1
下面的代码会生成下图,可以帮助你入门:
坐标是从左上角的 (0,4) 到右下角的 (5,0) (我已制作 x 比例2
以适合您的列标签)。
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{arrows.meta}
\begin{document}
\begin{tikzpicture}[xscale=2]
\foreach \row [count=\r] in {C,0,1,2,3} {
\draw[thick](0,5-\r)node[left]{\row} -- ++(5,0);
}
\foreach \col [count=\c] in {request,pre-prepare,prepare,commit,reply}{
\draw[dotted] (\c,5)node[above left, anchor=east]{\col}--++(0,-5);
}
\foreach \a/\b/\c/\d in {% arrow from (\a,\b) to (\a+\c,\b+\d)
0.2/4/0.7/-1,
1.2/3/0.8/-1,
1.2/3/0.7/-2,
1.2/3/0.6/-3
}{ \draw[blue,-{Stealth}] (\a,\b)--++(\c,\d); }
\end{tikzpicture}
\end{document}