I would like to draw the following picture using tikzpicture. Could you please help me?
Thanks in advance.
Regards,
MSA
I would like to draw the following picture using tikzpicture. Could you please help me?
Thanks in advance.
Regards,
MSA
This reproduces most of your screen shot but I did not have the patience to punch in the texts. You start with the interior of the cloud, fit the cloud around it, and then add the other things. The triple arrow can be conveniently done with a pic, trident, which I added here.
\documentclass[tikz,border=3mm]{standalone} \usepackage{amsmath} \usetikzlibrary{arrows.meta,backgrounds,calc,fit,positioning,shadows.blur,shapes.symbols} \begin{document} \begin{tikzpicture}[pics/trident/.style={code={ \draw[->] (0,0) -- (45:0.5); \draw[->] (0,0) -- (0:{0.5/sqrt(2)}); \draw[->] (0,0) -- (-45:0.5); \fill(0,0) circle[radius=2pt]; }},>={Triangle},circ/.style={circle,draw,minimum size=1.6em,inner sep=1pt}, truncated/.style={path picture={ \draw ([xshift=-#1]path picture bounding box.north) -- ([xshift=-#1]path picture bounding box.south) ([xshift=#1]path picture bounding box.north) -- ([xshift=#1]path picture bounding box.south); }},truncated/.default=1ex, Dotted/.style={% https://tex.stackexchange.com/a/101263/194703 line cap=round, dash pattern=on 0pt off 4.5\pgflinewidth,shorten >=1ex,shorten <=1ex}] \begin{scope}[local bounding box=fit] \node[circ] (i) {$\boldsymbol{i}$}; \draw[<-] (i) -- ++ (160:1.2) coordinate (aux1); \draw[<-] (i) -- ++ (-160:1.2) coordinate (aux2); \draw[thick] (i) -- ++ (20:1.2) coordinate (aux3) pic[pos=1,sloped,thin]{trident}; \draw[thick] (i) -- ++ (-20:1.2) coordinate (aux4) pic[pos=1,sloped,thin]{trident}; \path (aux1) -- node(Ini){In$(i)$} (aux2) (aux3) -- node{Out$(i)$} (aux4) (aux3) ++ (0,0.7) coordinate (aux6); \node[below=1.1cm of Ini,circ](lc1){$\phantom{i}$}; \draw[thick] (lc1) -- node[above]{$e$} node[below=0.5ex]{$U_eR_e$}++ (00:1) coordinate(aux5) pic[pos=1,sloped,thin]{trident}; \path coordinate[right=7mm of aux5](lc2) node[above=0.4em of lc2,circ](lc3){$\phantom{i}$} node[below=0.4em of lc2,circ](lc4){$\phantom{i}$}; \end{scope} % \begin{scope}[on background layer] \node[cloud,cloud puffs=6,draw,blur shadow={shadow xshift=0em}, fit=(fit),fill=white,inner sep=-1em, label=above:Network](cloud){}; \end{scope} % \path (cloud.20) -- ++ (20:1.5) node[circ](1) {$\boldsymbol{1}$} coordinate[pos=0.4] (auxTR) node[above=1em]{Sinks $\mathcal{T}$}; \draw[->] (cloud) -- (1); \path (cloud.0) -- ++ (0:1.5) node[circ](t) {$\boldsymbol{t}$} node[right=1em]{$\boldsymbol{Y}_{\beta(t)}$}; \draw[->] (cloud) -- (t); \path (cloud.-20) -- ++ (-20:1.5) node[circ,truncated=1.1ex](T) {$\mathcal{T}$} coordinate[pos=0.4] (auxBR); \draw[->] (cloud) -- (T); % \draw[line width=1.8pt,Dotted] (auxTR) -- (auxBR); % \path (cloud.160) -- ++ (160:1.5) node[circ](1') {$\boldsymbol{1}$} node[above=1em]{Sources $\mathcal{T}$} coordinate[pos=0.5] (auxTL) ; \draw (1'.-20) -- ++ (-20:0.7) pic[pos=1,sloped]{trident}; \path (cloud.180) -- ++ (180:1.7) node[circ](s) {$\boldsymbol{s}$} node[left=1em]{$Y_s$}; \draw (s.00) -- ++ (00:0.7) pic[pos=1,sloped]{trident}; \path (cloud.-160) -- ++ (-160:1.5) node[circ,truncated=1.1ex](S) {$\mathcal{S}$} coordinate[pos=0.5] (auxBL) ; \draw (S.20) -- ++ (20:0.7) pic[pos=1,sloped]{trident}; % \draw[line width=1.8pt,Dotted] (auxTL) -- (auxBL); \end{tikzpicture} \end{document}