我想创建一个模板用于个人行动计划。我在 Google 上搜索了一下,找到了我喜欢的格式。我开始使用 TikZ 重新创建它,但我对这个软件包不太熟悉。我想创建一个看起来像下图的模板(减去文本,我当然会输入自己的文本),但我喜欢这些框和流程。有人能帮我入门或给我一些关于如何复制此布局的想法吗?非常感谢! ]1
答案1
Torbjørn T. 已经向您展示了如何绘制信号节点。除此之外,您还可以使用矩阵。(append after command
我不知道为什么下面的代码没有按预期工作,但至少它创建了延伸箭头所需的空间。)请原谅我没有从您的屏幕截图中插入文本。
\documentclass[tikz,border=3.14mm]{standalone}
\usetikzlibrary{shapes.symbols,matrix,patterns}
\begin{document}
\begin{tikzpicture}[font=\sffamily,
box/.style={draw,fill=green!20,align=center},
arr/.style={draw,fill=red!20,signal, signal to=south, signal pointer angle=160,
align=center}, % Torjorn
tbox/.style={draw,align=left},
sr/.style={signal,text width=1.8cm,align=left,alias=tmp,
append after command={(tmp.north east) -- ++ (0.2,0) -- ++(0.5,-0.5)
-- ++ (-0.5,-0.5) -- (tmp.south east)},draw=black}
]
\matrix (mat) [matrix of nodes,column sep=2pt,row sep=3pt,nodes={text width=3cm,anchor=center,minimum height=1cm}]
{ |[sr,fill=green!20]| {Current\\ skills} &
|[box]| hupflbupfl & |[box]| hupflbupfl &
|[box]| hupflbupfl & |[box]| hupflbupfl \\
|[sr,fill=red!20]| {Skills to\\ work on} &
|[arr]| hupflbupfl & |[arr]| hupflbupfl &
|[arr]| hupflbupfl & |[arr]| hupflbupfl \\
& |[tbox]| {\begin{itemize}
\item some item
\item another item
\item one more item
\end{itemize}
~}
& |[tbox]| {\begin{itemize}
\item some item
\item another item
\item one more item
\end{itemize}
~}
& |[tbox]| {\begin{itemize}
\item some item
\item another item
\item one more item
\end{itemize}
~}
& |[tbox]| {\begin{itemize}
\item some item
\item another item
\item one more item
\end{itemize}
~}
\\
};
\foreach \X in {1,2}
{\draw ([yshift=-\pgflinewidth/2]mat-\X-1.north east) -- ++ (0.2,0)
-- ([xshift=2mm]mat-\X-1.east)
-- ([xshift=2mm,yshift=\pgflinewidth/2]mat-\X-1.south east) -- ([yshift=\pgflinewidth/2]mat-\X-1.south east);
}
\path[pattern=crosshatch dots,pattern color=blue]
([xshift=-2mm]mat-3-2.north west) --
([xshift=-1.5cm]mat-3-2.west)
node[circle,fill=blue!30,text=white,minimum size=1.4cm,align=center] {Goals}
-- ([xshift=-2mm]mat-3-2.south west) -- cycle;
\path (mat-1-1.south) -- (mat-2-1.north) coordinate[midway] (aux);
\draw[dashed] (mat.west |- aux) -- (mat.east |- aux);
\end{tikzpicture}
\end{document}