\documentclass[12pt,table]{article}
\begin{document}
\usepackage{tikz}
\usepackage{pgfplots}
\usetikzlibrary{arrows,positioning}
\tikzstyle{arrow}=[thick,->,>=stealth]
\usepackage{subcaption}
\usetikzlibrary{shapes}
\begin{tikzpicture}[scale=1.2]
\path (4,2) node [cloud, draw,cloud puffs=9,cloud puff arc=90, aspect=1.7, inner ysep=.3em](F1){}
(5,2) node[circle,draw,circle = 1cm](F2){}
(5,2.3) node[align = center]{}
(6,2) node[rectangle,draw](F3){}
(6,1.75) node[align = center]{}
(7,2) node[circle,draw](F4){}
(7,2.25) node[align = center]{}
(8,2) node[cloud, draw,cloud puffs=9,cloud puff arc=90, aspect=1.7, inner ysep=.3em](F5){}
(3.5,1.5) node[circle,draw,circle = 1cm](F6){}
(3.5,1.75) node[align = center]{};
\draw (F1) -- (F2);
\draw[->](F2)--(F3);
\draw(F3) -- (F4);
\draw[->](F4)--(F5);
\end{tikzpicture}
\end{document}
答案1
您可以定义节点的最小大小:
\documentclass[tikz, margin=3mm, tikz]{standalone}
\usetikzlibrary{arrows.meta,
chains,
positioning,
shapes.multipart, shapes.symbols}
\begin{document}
\begin{tikzpicture}[
node distance = 9mm and 7mm,
start chain = F going right,
arr/.style = {-Straight Barb},
base/.style = {draw, semithick,
minimum size=3em}, % <--- define size of nodes
C/.style = {base, circle},
MPNh/.style = {base, % Multi Part Node horizontal
rectangle split, rectangle split parts=4,
rectangle split horizontal},
oblak/.style = {base, minimum width=4em,
cloud, cloud puffs=9, cloud puff arc=150, aspect=2},
]
\begin{scope}[nodes={on chain, join=by arr}]
\node [oblak] {};
\node [C] {};
\node [base] {};
\node [C] {};
\node [oblak] {};
\end{scope}
\node [C, above=of F-3] {};
\end{tikzpicture}
\end{document}
- 在上面的 MWE 中,我擅自使用
tikz
库chains
及其宏在链中绘制节点join
。 - 由于您的前言未知,我使用
standalone
。您可以将其替换为 ehatever,但是,在这种情况下,您需要加载tikz
包并删除margin
选项。
编辑:
在矩形节点处添加垂直线,即用节点代替矩形multipart
。