Guten Abend,

ich bin auf der Suche nach einer eleganten möglichkeit die Graphen der drei Funktionen (z.B.) hier zu beschriften. Ich habe herausgefunden, dass man per Hand mittels

Open in writeLaTeX
   \coordinate [label={below right:$Name der Funktion$}] (A) at (0, 0);

die Graphen beschriften kann, was ja sehr umständlich sein kann, wenn es viele Graphen werden.

Es gibt sicherlich eine bessere Lösung. Hat jemand eine Idee?

gefragt 15 Jun '14, 13:19

uniQue_'s gravatar image

uniQue_
109211
Akzeptiert: 66%


Legende

Die einfachste und meiner Meinung nach übersichtlichste Variante ist die Verwendung einer Legende. Dabei kann man die Legendeneinträge zum Beispiel über den \legend Befehl vornehmen, der eine kommaseparierte Liste aller Einträge als Argument erwartet. Die Position der Legende lässt sich über die axis Option legend pos ändern.

alt text

Code:

Open in writeLaTeX
\documentclass[margin=5pt]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}

\begin{document}
\begin{tikzpicture}[thick]
  \begin{axis}[
      no markers,
      samples=200,
      smooth,
      domain=-0.4:0.4,
      axis lines=middle,
      enlarge y limits={0.05,upper},
      xtick = {-0.3, -0.2, -0.1, 0.1, 0.2, 0.3},
      %legend pos=outer north east,
    ]
    \pgfplotsinvokeforeach{2,3,4}{
      \addplot{pow(sin(deg(pi*x*(#1+1)))/sin(deg(pi*x)),2)/(#1+1)};
    }
    \legend{$f_1$,$f_2$,$f_3$}
  \end{axis}
\end{tikzpicture}
\end{document}

Beschriftung direkt an den einzelnen Plots

Ein Plot lässt sich auch durch so etwas wie

Open in writeLaTeX
\addplot {<plotfunktion>}node[right,pos=0.5]{<name>};

wobei pos=0.5 die Mitte des Plots bezeichnet und right angibt, dass <name> rechts daneben gesetzt werden soll. Will man die Beschriftung innerhalb einer Schleife vornehmen, dann braucht man weitere Schleifenvariablen: mindestens eine für <name> und eventuell zwei weitere für die Positionierung und Ausrichtung. Bei vielen Plots kann das schnell unübersichtlich werden.

alt text

Code:

Open in writeLaTeX
\documentclass[margin=5pt]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}

\begin{document}
\begin{tikzpicture}[thick]
  \begin{axis}[
      no markers,
      samples=200,
      smooth,
      domain=-0.4:0.4,
      axis lines=middle,
      enlarge y limits={0.05,upper},
      xtick = {-0.3, -0.2, -0.1, 0.1, 0.2, 0.3},
    ]
    \pgfplotsforeachungrouped \i/\name in {2/$f_1$,3/$f_2$,4/$f_3$}{
      \pgfmathsetmacro\p{0.8-\i*0.05}
      \edef\temp{%
        \noexpand\addplot{pow(sin(deg(pi*x*(\i+1)))/sin(deg(pi*x)),2)/(\i+1)}
          node[right,pos=\p]{\name};}%
      \temp
    }
  \end{axis};
\end{tikzpicture}
\end{document}
Permanenter link

beantwortet 15 Jun '14, 15:22

esdd's gravatar image

esdd
14.2k53251

bearbeitet 15 Jun '14, 16:28

Hey, das sieht ja wie immer toll aus! Ich habe jetzt noch ein wenig daran rumgespielt, aber schaffe es leider nicht: Wie kann ich denn die Graphen mit D_i mit i=1,2,3 beschriften? Bei dieser Indizierung bekomme ich immer Fehlermeldungen.

(15 Jun '14, 15:53) uniQue_

@uniQue_ $D_i$ braucht den Mathemodus - evtl. fehlt der? Sonst zeig das genaue Problem samt Fehlermeldung vllt. in einer neuen Frage.

(15 Jun '14, 16:07) stefan ♦♦

Hi, ich glaube ich habe peinlicher Weise die $-Zeichen vergessen. Jetzt klappt es. Super Lösung!

(16 Jun '14, 04:51) uniQue_
Deine Antwort auf die Frage (nicht auf andere Antworten)
Knebel-Vorschau

Folge dieser Frage

Per E-Mail:

Wenn Du Dich anmeldest, kannst Du Updates hier abonnieren

Per RSS:

Antworten

Antworten und Kommentare

Aktuelle Buch-Infos

LaTeX Cookbook

LaTeX Beginners Guide

Limitierter Rabatt ebook
50% Coupon code tDRet6Y

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üge einfach zwei Leerzeichen an die Stelle ein, an der die neue Zeile sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Zugeordnete Themen:

×7

Frage gestellt: 15 Jun '14, 13:19

Frage wurde angeschaut: 2,364 Mal

Zuletzt aktualisiert: 16 Jun '14, 04:51