How to draw this picture using Tikz?
Here what I've acheived to do.
- I can’t align blocks to the right. solved
- How to make crossed out circles? solved
- How to make curved lines in a drawing?
MWE:
\documentclass[tikz,border=2pt]{standalone}
\usetikzlibrary{arrows, positioning, calc}
\usepackage{fontawesome5}
\begin{document}
\begin{tikzpicture}[>=stealth', thick, node distance=2.0em, on grid,
tt/.style={rectangle, align=center},
el/.style={circle, draw=black, minimum height=2.6em}
]
\node[rectangle, draw=black, minimum height=11em, minimum width=20em](uop){};
\node[tt, at={($(uop.north) + (0,-0.75em)$)}](uopt){\bfseries Unified Operating Manual};
%
\node[el, below=of uop.north, xshift=-5em](uope1){1};
\node[el, below=of uop.north](uope2){2};
\node[el, below=of uop.north, xshift=5em, fill=green](uope3){3};
%
\node[el, below=of uop.north, below=of uope1, yshift=-1em](uope4){4};
\node[el, below=of uop.north, below=of uope2, yshift=-1em](uope5){5};
\node[el, below=of uop.north, below=of uope3, yshift=-1em](uope6){6};
%
\node[el, below=of uop.north, below=of uope4, yshift=-1em](uope7){7};
\node[el, below=of uop.north, below=of uope5, yshift=-1em](uope8){8};
\node[el, below=of uop.north, below=of uope6, yshift=-1em](uope9){$N_f$};
\node (tt) at ($(uope8)!0.5!(uope9)$) {\ldots};
%
\node[left=of uope3, xshift=15em](user){\Huge\faIcon{user}};
\draw[<-, line width=3pt, loosely dotted, green] (uope3) -- (user) node[midway, xshift = 2em, above, black] {Changes};
%
\node[rectangle, draw=black, minimum height=11em, minimum width=17em, anchor=north east, below=of uop.south east](man1){};
\node[tt, at={($(man1.north) + (0,-0.75em)$)}](man1t){\bfseries Manual №1};
%
\node[el, below=of man1.north, xshift=-5em](uope11){1};
\node[el, below=of man1.north](uope21){2};
\node[el, below=of man1.north, xshift=5em, fill=green](uope31){3};
%
\node[el, below=of man1.north, below=of uope11, yshift=-1em](uope41){4};
\node[el, below=of man1.north, below=of uope21, yshift=-1em](uope51){5};
\node[el, below=of man1.north, below=of uope31, yshift=-1em](uope61){6};
%
\node[el, below=of man1.north, below=of uope41, yshift=-1em](uope71){7};
\node[el, below=of man1.north, below=of uope51, yshift=-1em](uope81){8};
\node[el, below=of man1.north, below=of uope61, yshift=-1em](uope91){$N_f$};
\node (tt) at ($(uope81)!0.5!(uope91)$) {\ldots};
\end{tikzpicture}
\end{document}
Best Answer
Repetitive code can best be avoided using
\pic
s. Therefore a solution using these (in combination with thematrix
andfit
libraries and a little friend provided by thetikzpeople
package):