Figur zu machen

Figur zu machen

Ich muss diese Abbildung exakt reproduzieren, erhalte aber nicht das gleiche Ergebnis.

Bildbeschreibung hier eingeben

\documentclass{article}
\usepackage{tikz}

\begin{document}

\begin{center}
        \definecolor{qqwuqq}{rgb}{0,0.39215686274509803,0}
            \definecolor{uuuuuu}{rgb}{0.26666666666666666,0.26666666666666666,0.26666666666666666}
            \definecolor{qqqqff}{rgb}{0,0,1}
            \begin{tikzpicture}[
            line cap=round,
            line join=round,
            >=stealth,
            lbl/.style={draw,circle},
        %   x=1cm,y=1cm
            ]
            \coordinate[label=below left:] (A) at (0,0);
            \coordinate[label=below left:] (B) at (6,0);
            \coordinate[label=below left:] (C) at (0,3.35);
            \coordinate[label=below left:] (D) at (-3,1);
            \coordinate[label=below left:] (E) at (-2,2);
            \coordinate[label=below left:] (F) at (2.66,1.51);
            \coordinate[label=below left:] (G) at (2.88,0.75);
            \coordinate[label=below left:] (H) at (1.52,-1.35);
            \coordinate[label=below left:] (I) at (-1.78,-0.91);
            \coordinate[label=below left:] (J) at (-2.84,-0.09);
            \coordinate[label=below left:] (K) at (-3.1,0.39);

            \draw [->,line width=0.8pt] (A) -- (B) node[midway, above] {};

            \draw [->,line width=0.8pt] (A) -- (C) node[midway, above] {};

            \draw [-,line width=0.8pt] plot [smooth, tension=1] coordinates {(D) (E) (F)};

            \draw [-,line width=0.8pt] plot [smooth, tension=1] coordinates {(F) (G) (H)};

            \draw [-,line width=0.8pt] plot [smooth, tension=1] coordinates {(H) (I) (J)};

            \draw [-,line width=0.8pt] plot [smooth, tension=1] coordinates {(J) (K) (D)};

            
            %\node[text width=6.2cm] at (1,2) {$\partial \mathbb{S}$};
         \end{tikzpicture}
    \end{center}

\end{document}

das Ergebnis :

Bildbeschreibung hier eingeben

Antwort1

So kann man es machen. Einige Anmerkungen:

  • alle von mir verwendeten Befehle im pgfmanual nachschlagen
  • Definieren und verwenden Sie viele weitere geeignete Stile, um Code zu vereinfachen und wiederzuverwenden
  • Vorschlag: Schreibe mehr Kommentare, auch für dich selbst
  • Sie haben die definierten Farben nicht verwendet ...
  • Ich würde die Koordinaten für das Gebiet weglassen; sieheFangen Sie einfach anUndweiter verfeinern
  • durch das Verändern der in- und out- Winkel können Sie überraschende Ergebnisse erzielen, auch mit Kanten (probieren Sie es ein wenig aus)
  • Setzen von Ankern am Knoten für die x- und y-Achse
  • für die mathematischen Beschriftungen habe ich zwei Abkürzungen verwendet \msund\fs
  • Sie müssen laden, \usepackage{amsfonts,amsmath}um sie anzuzeigen
  • die doppelte Unterstreichung von Sigma ist für einen Anfänger schwierig; siehe die beiden Links im Kommentar; meine ist eine Annäherung, die auf diesen basiert

Ergebnis

\documentclass{article}
\usepackage{tikz}
\usepackage{amsfonts,amsmath}


% ~~~ redefining \vec ~~~~~~~~~~~
%     see: https://tex.stackexchange.com/questions/561255/in-math-mode-underline-adjacent-variables-except-with-space-between-underlines
%     see: https://tex.stackexchange.com/questions/649142/double-underline-notation-for-matrices-and-single-underline-notation-for-vectors

\renewcommand\vec[1]{%
  \mspace{2mu}%
  \underline{\mspace{-2mu}#1\mspace{-8mu}}%
  \mspace{2mu}%
}

% ~~~ shortcuts ~~~~~~~~~~~~~~~~~~~~~~~
\newcommand\ms[0]{\mathbb{S}}
\newcommand\fs[0]{f(\vec{\sigma)}}


\begin{document}

\begin{center}
%   \definecolor{qqwuqq}{rgb}{0,0.39215686274509803,0}
%   \definecolor{uuuuuu}{rgb}{0.26666666666666666,0.26666666666666666,0.26666666666666666}
%   \definecolor{qqqqff}{rgb}{0,0,1}
    
    \begin{tikzpicture}[
        line cap=round,
        line join=round,
        >=stealth,
        lbl/.style={draw,circle},
        lne/.style={line width=0.8pt},
        area/.style={lne, fill=teal!50},%,rounded corners},
        %   x=1cm,y=1cm
        ]
        % ~~~ for the axes ~~~~~~~~~~~~
        \coordinate[label=below left:] (A) at (0,0);
        \coordinate[label=below left:] (B) at (4,0);
        \coordinate[label=below left:] (C) at (0,3.35);
        
        % ~~~ for the area ~~~~~~~~~~~~~~~
        %     obsolete with my approach
%       \coordinate[label=below left:] (D) at (-3,1);
%       \coordinate[label=below left:] (E) at (-2,2);
%       \coordinate[label=below left:] (F) at (2.66,1.51);
%       \coordinate[label=below left:] (G) at (2.88,0.75);
%       \coordinate[label=below left:] (H) at (1.52,-1.35);
%       \coordinate[label=below left:] (I) at (-1.78,-0.91);
%       \coordinate[label=below left:] (J) at (-2.84,-0.09);
%       \coordinate[label=below left:] (K) at (-3.1,0.39);
        
        % ~~~ area ~~~~~~~~~~~~
        %     works with your data, but ...
%       \draw[area] (D) -- (E) -- (F) -- (G) -- (H) -- 
%                   (I) -- (J) -- (K) -- cycle;
        
        % ~~~ start simple ~~~~~~~~~~~~~~~~~~~~~~~
%       \draw[area] (-2,0) -- (.4,2) -- (2,0) -- (-.5,-1.5) -- cycle;
        
        % ~~~ next refine ~~~~~~~~~~~~~~~~~~~~~~~
        \draw[area] (-2,0)  to[out=90,in=180] (.4,2) to[out=0,in=90] (2,0)
                            to[out=-90,in=00] (-.5,-1.5) 
                            to[out=180,in=-90] cycle;
        
        % ~~~ axes ~~~~~~~~~~~~~~~~~~~
        \draw [->,lne] (A) -- (B) node[anchor=west] {$\sigma_{kl}$};        
        \draw [->,lne] (A) -- (C) node[anchor=south] {$\sigma_{ij}$};
    
        % ~~~ missing labels ~~~~~~~~~~~~~~~~~~~~
        \node at (.5, .5) {$\ms$};      
        \node at (.5,-.5) {$\fs \le 0$};        
        
        \node[align=center] at (1,2) {$\partial \mathbb{S}$\\$\fs = 0$};
    \end{tikzpicture}
  \end{center}
\end{document}

verwandte Informationen