Zeichne ein Tikzbild

Zeichne ein Tikzbild

Ich möchte mit tikzpicture folgendes Bild zeichnen. Könnt ihr mir bitte helfen?

Dank im Voraus.

Bildbeschreibung hier eingeben

Grüße,

MSA

Antwort1

Dies reproduziert den größten Teil Ihres Screenshots, aber ich hatte nicht die Geduld, die Texte einzutippen. Sie beginnen mit dem Inneren der Wolke, passen die Wolke darum an und fügen dann die anderen Dinge hinzu. Der Dreifachpfeil kann bequem mit einem Bild erstellt werden, tridentdas ich hier hinzugefügt habe.

\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}

Bildbeschreibung hier eingeben

verwandte Informationen