【发布时间】:2022-01-02 20:14:30
【问题描述】:
我正在尝试使用 LaTeX 中的 tikz 包复制我使用 Microsoft Visio 制作的一些图表。基本图表相对容易构建,但是当要添加两个以上的节点时,它变得非常棘手......我似乎找不到任何文档证明我需要居中和对齐节点就像我在 Visio 中所做的那样。
这是一个最小的可重现示例:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{tikz}
\usepackage{svg}
\usepackage{amsmath}
\usetikzlibrary{shapes.geometric, arrows, chains}
%%
%%TikZ Settings
\tikzstyle{main} = [rectangle, minimum width=3cm, minimum height=0.6cm,text centered, text width=3cm, draw=black, fill=black!30]
\tikzstyle{arrow} = [thick,->,>=stealth]
\begin{document}
%The "Remediação" diagram
\begin{tikzpicture}[node distance=1.5cm]
\node (principal) [main] {Remediação};
\coordinate[below of=principal] (a);
\begin{scope}[start chain=going right]
\node (rem-vuln-c-patch) [main, on chain, below of=principal, left of=a] {Remediação de Vulnerabilidade Normal com \textit{patch}};
\node (rem-vuln-c-c-patch) [main, on chain] {Remediação de Vulnerabilidade Crítica com \textit{patch}};
\node (rem-vuln-config) [main, on chain] {Remediação de Vulnerabilidade por má configuração};
\node (gest-vuln-s-patch) [main, on chain] {Gestão de Vulnerabilidade sem \textit{patch}};
\end{scope}
\node(gest-risco) [main, align=center, below of=rem-vuln-c-c-patch] {Gestão de Risco};
\draw [arrow] (principal) -| (rem-vuln-c-patch);
\draw [arrow] (principal) -| (rem-vuln-c-c-patch);
\draw [arrow] (principal) -| (rem-vuln-config);
\draw [arrow] (principal) -| (gest-vuln-s-patch);
\draw [arrow] (gest-vuln-s-patch) |- (gest-risco);
\draw [arrow] (gest-risco) -| (rem-vuln-c-patch);
\draw [arrow] (gest-risco) -- (rem-vuln-c-c-patch);
\end{tikzpicture}
% The "Balanço" diagram
\begin{tikzpicture}[node distance=1.5cm]
\node (principal) [main] {Balanço};
\coordinate[below of=principal] (a);
\begin{scope}[start chain=going right]
\node (lic-apr) [main, on chain, below of=principal, left of=a] {Lições aprendidas};
\node (reu-retro) [main, on chain] {Reunião de Retrospetiva};
\node (cri-rel-exec) [main, on chain] {Criação do relatório executivo};
\end{scope}
\draw [arrow] (principal) -| (lic-apr);
\draw [arrow] (principal) -| (reu-retro);
\draw [arrow] (principal) -| (cri-rel-exec);
\end{tikzpicture}
\end{document}
【问题讨论】:
-
你能做一个可编译的minimal reproducible example吗?
-
@samcarter_is_at_topanswers.xyz 这是一个特定的问题。我不能比这更概括它,因为这与定位以及链和图表中的节点数量有关。我能做的最好的事情就是用字母交换真实的文本,但我认为它不会有太大变化
-
当然是具体的,但是你可以添加一个可编译的文档,包括一个文档类和必要的包。
-
@samcarter_is_at_topanswers.xyz 哦,确定!我刚刚更新了这些信息。
标签: latex diagram tikz xelatex overleaf