Ich habe bereits hier nachgeschaut, aber dort steht nichts zur Frage "Wie kann ich Nodes entlang von Pfaden positionieren?" geschrieben.

Ich habe folgendes Beispiel:

Open in Online-Editor
\documentclass[12pt]{standalone}
\usepackage[utf8]{inputenc}
\usepackage{fontenc}
\usepackage[ngerman]{babel}
\usepackage{tikz}

\begin{document}
  \begin{tikzpicture}[line cap=round, line join=round, x=1cm, y=1cm, scale=0.6]
    %Achsen
    \draw [dotted,color=black!20] (-5,0) grid (5,9);
    \draw [->] (-5.5,0) -- (5.8,0) node[right] {\scriptsize$x$};
    \draw [->] (0,-0.5) -- (0,9.8) node[above] {\scriptsize$y$};
    %Ticks
    \foreach \x in {-5,-4,-3,-2,-1,1,2,3,4,5}
    \draw [shift={(\x,0)}] (0pt,2pt) -- (0pt,-2pt) node[below] {\tiny$\x$};
    \foreach \y in {1,...,9}
    \draw [shift={(0,\y)}] (2pt,0pt) -- (-2pt,0pt) node[left] {\tiny$\y$};
    %Funktion
    \draw plot[raw gnuplot,id=expx,smooth] function{set samples 100;set xrange [-5.1:2.2]; plot exp(x)} node[right]{\footnotesize$y=e^x$};
    \draw plot[raw gnuplot,id=exp-x,smooth] function{set samples 100;set xrange [-2.2:5.1]; plot exp(-x)} node[left] {\footnotesize$y=e^{-x}$};
  \end{tikzpicture}
\end{document}

alt text

Die Beschrifung der zweiten Kurve exp(-x) soll symmetrisch (bezüglich der y-Achse) zur Beschriftung der ersten Kurve exp(x) stehen.

Wie kann ich angeben, dass der Node links vom Startpunkt des plots gesetzt wird statt links vom Endpunkt?

Was ich erfolglos versucht habe: Die Reihenfolge zu ändern

Open in Online-Editor
\draw node[left] {\footnotesize$y=e^{-x}$} plot[raw gnuplot,id=exp-x,smooth] function{set samples 100;set xrange [-2.2:5.1]; plot exp(-x)};

Auch das hat nicht geholfen:

Open in Online-Editor
\draw plot[raw gnuplot,id=exp-x,smooth] function{set samples 100;set xrange [-2.2:5.1]; plot exp(-x)} node[at start,left] {\footnotesize$y=e^{-x}$};

gefragt 22 Jan '15, 11:32

tom75's gravatar image

tom75
2.2k277984
Akzeptiert-Rate: 57%

bearbeitet 07 Feb '16, 12:00

saputello's gravatar image

saputello
11.1k174365


Entsprechend dem Hinweis zu Begin des Kapitels "Plots of Functions"

A warning before we get started: If you are looking for an easy way to create a normal plot of a function with scienti c axes, ignore this section and instead look at the pgfplots package or at the datavisualization command from Part VI.

würde ich für den Plot einer Funktion gleich das Paket pgfplots verwenden.

Open in writeLaTeX
\documentclass[margin=5pt,12pt]{standalone}
\usepackage{pgfplots}% lädt auch tikz
\pgfplotsset{compat=1.11}

\begin{document}
\begin{tikzpicture}[beschriftung/.style={font=\footnotesize}]
  \begin{axis}[
      scale=.6,
      axis lines=middle,
      x=1cm,y=1cm,
      grid=major,grid style={dotted,black!20},
      xtick={-5,...,5},ytick={1,...,9},
      ticklabel style={font=\tiny},
      xlabel=$x$,ylabel=$y$,
      label style={font=\scriptsize},
      xlabel style={at={(xticklabel* cs:1)},anchor=west},
      ylabel style={at={(yticklabel* cs:1)},anchor=south},
      enlargelimits={abs=.8}
    ]
    \addplot[raw gnuplot,id=expx,smooth] 
      function{set samples 100;set xrange [-5.1:2.2]; plot exp(x)} 
      node[anchor=west,beschriftung]{$y=e^{x}$};
    \addplot[raw gnuplot,id=exp-x,smooth] 
      function{set samples 100;set xrange [-2.2:5.1]; plot exp(-x)} 
      node[at start,anchor=east,beschriftung] {$y=e^{\smash{-}x}$};
  \end{axis}
\end{tikzpicture}
\end{document}

Ergebnis:

alt text


Ob es nur mit TikZ auch die Möglichkeit gibt einen Node am Anfang der Funktion zu platzieren, weiß ich nicht. Aber Du kannst natürlich auch die Startkoordinate Deines Plots berechnen lassen und die Beschriftung neben diese setze:

Open in writeLaTeX
\documentclass[margin=5pt,12pt]{standalone}
\usepackage[utf8]{inputenc}
\usepackage{fontenc}
\usepackage[ngerman]{babel}
\usepackage{tikz}

\begin{document}
  \begin{tikzpicture}[line cap=round, line join=round, x=1cm, y=1cm, scale=0.6]
    %Achsen
    \draw [dotted,color=black!20] (-5,0) grid (5,9);
    \draw [->] (-5.5,0) -- (5.8,0) node[right] {\scriptsize$x$};
    \draw [->] (0,-0.5) -- (0,9.8) node[above] {\scriptsize$y$};
    %Ticks
    \foreach \x in {-5,-4,-3,-2,-1,1,2,3,4,5}
    \draw [shift={(\x,0)}] (0pt,2pt) -- (0pt,-2pt) node[below] {\tiny$\x$};
    \foreach \y in {1,...,9}
    \draw [shift={(0,\y)}] (2pt,0pt) -- (-2pt,0pt) node[left] {\tiny$\y$};
    %Funktion
    \draw plot[raw gnuplot,id=expx,smooth] 
      function{set samples 100;set xrange [-5.1:2.2]; plot exp(x)} 
      node[right]{\footnotesize$y=e^x$};
    \draw plot[raw gnuplot,id=exp-x,smooth] 
      function{set samples 100;set xrange [-2.2:5.1]; plot exp(-x)};
    \node[left] at (-2.2,{exp(2.2)}) {\footnotesize$y=e^{\smash{-}x}$};
  \end{tikzpicture}
\end{document}
Permanenter link

beantwortet 22 Jan '15, 12:43

esdd's gravatar image

esdd
17.8k284257
Akzeptiert-Rate: 62%

bearbeitet 22 Jan '15, 13:47

@esdd Danke. pgfplots setzt doch auf TikZ auf. Dann müsste es doch irgendwie auch direkt gehen.

(22 Jan '15, 13:22) tom75

@tom75 Das relative Positionieren entlang des Plots dürfte nicht so einfach sein, aber die Koordinaten des Startpunktes sind ja bekannt bzw. berechenbar. Du kannst die Beschriftung deshalb auch direkt einfügen. Ich habe die Antwort entsprechend ergänzt.

(22 Jan '15, 13:59) esdd

@esdd Ja, so hatte ich das zuvor auch gemacht, und zwar ursprünglich für beide Funktionen. Ich fand das irgendwie "unelegant" :-).

Ich hab zwischenzeitlich noch versucht mit postaction etwas zu erreichen. Der Gedanke war, dass er vielleicht nach dem plotten "weiß", wo der Startpunkt ist. Ich hab es mit

\draw postaction={draw node[at start,left] {$e^{-x}} plot[raw gnuplot,id=exp-x,smooth] ...

versucht, was ich aber nicht lauffähig bekommen hab.

(22 Jan '15, 14:14) tom75

@esdd Noch eine Frage zu \smash: Ich seh den Unterschied aber ich versteh ihn nicht. Ich hab gelesen, dass dieser Befehl für Wurzeln gedacht ist.

(22 Jan '15, 16:26) tom75
1

@tom75 \smash versteckt die Höhe und Tiefe seines Arguments. Auch wenn man es nicht erwartet, aber das - ist höher als das x, weshalb die beiden Beschriftungen ohne diesen Befehl nicht symmetrisch wären.

(22 Jan '15, 16:48) esdd

@esdd Vielleicht ist das eine neue Frage und gehört hier nicht her:

Wenn ich $\fbox{x}\fbox{-}$ mache, sehen die beiden Boxen gleich hoch aus.

(22 Jan '15, 17:00) tom75
1

@tom75: \fbox schaltet in den Textmodus:

\documentclass{article}
\begin{document}
$\fbox{x}\fbox{-}$\fbox{$x$}\fbox{$-$}
\end{document}

(22 Jan '15, 17:19) saputello

@saputello Ok, jetzt seh ich es! Danke

Das ist echt wahnsinn, was man alles beachten und bedenken muss... zumindest steht davon nix in den Büchern die ich hab.

(22 Jan '15, 17:24) tom75
Ergebnis 5 von 8 show 3 more comments
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
×76
×41
×11

gestellte Frage: 22 Jan '15, 11:32

Frage wurde gesehen: 12,269 Mal

zuletzt geändert: 07 Feb '16, 12:00