Hallo,

Ich möchte mit LATEX möglichst einfach eine Grafik erstellen, die die komplexe Ebene zeigen soll. Darin möchte ich den "Korridor" $\abs{y}\leq \frac{1}{2}\abs{x}$ für z=x+iy z.B grau hinterlegen und in einem anderen Grauton eine Folge von Kreisscheiben andeuten, die ihre Mittelpunkte auf der positiven reellen Achse haben und alle vollständig in diesem Korridor liegen. Kann mir jemand helfen?

PS: Das ist meine erste Frage, wie kann ich Latexumgebung für den mathematischen Text aktivieren?

gefragt 26 Mär '14, 13:23

cQQkie's gravatar image

cQQkie
33112
Akzeptiert-Rate: 0%

bearbeitet 21 Jun '16, 17:41

saputello's gravatar image

saputello
11.1k174365

Herzlich willkommen auf der TeXwelt! Code im Text kann man mit Backticks (schrägen Hochkommata ...) markieren, oder bei mehreren Zeilen absetzen per Einrückung (4 Leerzeichen), dann erfolgt automatisch Syntax-Hervorhebung und Verknüpfung zum writeLaTeX Online-Compiler.

(26 Mär '14, 13:28) stefan ♦♦

Ein Vorschlag mit pgfplots:

  • Angabe der Achsen-Eigenschaften (Kreuz in der Mitte, Markierungen)
  • Plot der Linie, geschlossen und gefüllt, mal mit einem Muster zur Unterscheidung von den Kreisen
  • Zwei Plots, da es sich um den Betrag handelt - hier gefüllt zur Achse hin, alternativ kann man mit der PGF-Library fillbetween arbeiten und zwischen beiden Linien füllen
  • Zeichnen der Kreise in einer \foreach-Schleife, der \edef-Trick hilft bei der Verwendung von Schleifenvariablen im axis-Code
  • Opacity verwendet, da die Transparenz alle Teile der Zeichnung besser sehen lässt als Überlappung
Open in writeLaTeX
\documentclass[border=10pt]{standalone}
\usepackage{pgfplots}
\pgfplotsset{width=7cm, compat=1.8}
\usetikzlibrary{patterns}
\begin{document}
\begin{tikzpicture}
  \begin{axis}[
      axis lines = middle,
      xtick       = {1, 2, 3},
      xticklabels = {1, 2, $x$},
      ytick       = {-1, 1, 2},
      yticklabels = {-1, 1, $y$},
      samples     = 160,
      domain      = -3:3.2,
      xmin = -3, xmax = 3.2,
      ymin = -2, ymax = 2,
      axis equal,
    ]
    \foreach \funktion in {0.5*x, -0.5*x} {
      \addplot[line width=0.5pt, no markers,
        pattern = north east lines,pattern color=black!50]
        {\funktion} \closedcycle;
    }
    \foreach \x/\r in {0.7/0.3, 1.18/0.5, 1.8/0.8, 2.5/1.1} {
      \edef\kreis{\noexpand%
        \draw[fill=black!30, opacity=0.5] (axis cs:{\x},0) circle[radius=\r];}
      \kreis
    }
  \end{axis}
\end{tikzpicture}
\end{document}

Kreise in der komplexen Ebene

Permanenter link

beantwortet 26 Mär '14, 14:23

stefan's gravatar image

stefan ♦♦
18.3k163148
Akzeptiert-Rate: 50%

bearbeitet 26 Mär '14, 15:55

@stefan ♦♦: Vielen Dank. genau so hatte ich mir das vorgestellt!

(26 Mär '14, 16:10) cQQkie

@cQQkie Gerne! Poste ruhig weitere Fragen, aus denen heraus man tolle mathematische Illustrationen erstellen kann, macht ja Spaß! Ich habe nun sogar die Kategorie Funktionentheorie angelegt (wg. komplexer Zahlen) - ich denke "Tags" für Fachgebiete sind auch praktisch.

(26 Mär '14, 16:22) stefan ♦♦

Der einfachste Weg wäre die auch von @Stefan erwähnte Nutzung der Bibliothek fillbetween für pgfplots. Alternativ könnte man auch mit Hilfe von stack plots tatsächlich die Fläche zwischen beiden Linien füllen. Das ist aber nur notwendig, wenn der Schnittpunkt der Linien nicht mehr auf der x-Achse liegt.

Man kann jedoch die Zeichnung auch nur mit TikZ erstellen und dabei ebenfalls tatsächlich die Fläche zwischen den Linien füllen. Die Radien \r der Kreise ergeben sich bei den hier vorgegebenen Gleichungen für die Linien aus der jeweiligen \x Koordinate als \x*sin(atan(0.5)) bzw., wenn man den Pythagoras nutzt, einfacher als \x/sqrt(5).

Open in writeLaTeX
\documentclass[margin=5pt,tikz]{standalone}
  \usetikzlibrary{patterns}
\begin{document}
\begin{tikzpicture}[
  font=\footnotesize, % kleinere Schrift
  samples=2 % zum Plotten von Geraden reichen 2 Punkte
  ]
% Koordinatensystem
  \draw[-stealth](-3,0)--(3.2,0)node[below right,xshift=-3mm]{Re$(z)$};
  \draw[-stealth](0,-3)--(0,3)node[left]{Im$(z)$};
  \clip(-3,-3)rectangle(3.2,3);
  \foreach \i in {1,2}\draw[very thin]
    (\i,2pt)--(\i,-2pt)node[below]{\i}
    (2pt,\i)--(-2pt,\i)node[left]{\i}
    (2pt,-\i)--(-2pt,-\i)node[left]{-\i};
% Füllung
  \fill[pattern =north east lines,pattern color=black!20]
    plot[domain=-3:3](\x,{0.5*\x})--
    plot[domain=3:-3](\x,{-0.5*\x})--cycle;
% Linien
  \draw[line width=.5pt,red!50!black]
    plot[domain=-3:3](\x,{0.5*\x})
    plot[domain=3:-3](\x,{-0.5*\x});
% Kreise
  \foreach[evaluate=\x as \r using \x/sqrt(5)] \x in {0.7, 1.18, 1.8, 2.5} {
    \edef\kreis{\noexpand%
      \draw[fill=red!20!black!30, opacity=0.5] (-\x,0) circle[radius=\r];}
    \kreis
  }
\end{tikzpicture}
\end{document}

alt text

Permanenter link

beantwortet 26 Mär '14, 17:01

esdd's gravatar image

esdd
17.8k284257
Akzeptiert-Rate: 62%

bearbeitet 30 Mär '14, 18:50

Deine Antwort
Vorschau umschalten

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs fügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×730
×298
×39
×20
×4

gestellte Frage: 26 Mär '14, 13:23

Frage wurde gesehen: 12,680 Mal

zuletzt geändert: 21 Jun '16, 17:41