Ich beziehe mich auf den Thread Partialsummen Plot (Gibbssches Phänomen) und würde gerne noch

  • die y-Achse der folgenden Graphik verlängern (sodass man den Peak bei x=0 besser erkennen kann)
  • die Beschriftung der y-Achse unterhalb der x-Achse auf die rechte Seite setzen (sodass sich Beschriftung und Graph nicht überschneiden)

Hier ist der Code mit Ausgabe:

Open in writeLaTeX
\documentclass{article}
\pagestyle{empty}% for cropping
\usepackage{mathtools,pgfplots,subcaption}
\begin{document}
%\begin{align*}
%    f(x) &=
%    \begin{cases*}
%        -1 & f\"ur $-\frac12<x<0$ \\
%        1 & f\"ur $0\le x<\frac12$ \\
%    \end{cases*} \\
%    S_N(f)(x) &= \sum_{m=1}^N \frac4\pi \frac{\sin((2m-1)\pi x)}{2m-1}
%\end{align*}
\begin{figure}
    \centering
    \foreach \N in {3,7,15,30} {
        \begin{subfigure}{0.49\textwidth}
            \centering
            \begin{tikzpicture}
                \begin{axis}[
                        no markers,
                        samples=250, %100
                        smooth,
                        domain=-1.2:1.4,
                        axis lines=middle,
                        width=\linewidth,
                    ]
                    \xdef\sn{}
                    \foreach \m in {1,...,\N} {
                        \xdef\sn{\sn+4/pi*sin(deg((2*\m-1)*pi*x))/(2*\m-1)}
                    }
                    \expandafter\addplot\expandafter{\sn};
                    \begin{scope}[
                            every node/.style = {draw,fill=black,circle,inner sep=0.5pt}
                        ]
                        \draw (axis cs:0,1) node {} -- (axis cs:0.5,1) node {};
                        \draw (axis cs:0,-1) node {} -- (axis cs:-0.5,-1) node {};
                    \end{scope}
                \end{axis}
            \end{tikzpicture}
            \caption{$S_{\N}(f)(x)$}
        \end{subfigure}
    }
    \caption{Entwicklung in Partialsummen.}
\end{figure}
\end{document}

alt text

gefragt 23 Apr '14, 16:05

uniQue_'s gravatar image

uniQue_
1094611
Akzeptiert-Rate: 0%

bearbeitet 24 Apr '14, 22:04

cgnieder's gravatar image

cgnieder
22.1k253463

Du kannst als axis-Option noch ymax=1.6 und ymin=-1.6 hinzufügen. Oder entsprechende andere Zahlenwerte.

(23 Apr '14, 16:18) Johannes

@Johannes Super, mit begin{axis}[ ... ymax=1.35, ymin=-1.35, ... ] wird die y-Achse schonmal verlängert!

(23 Apr '14, 16:33) uniQue_

Neben dem von @Johannes und @Henri vorgeschlagenen Angeben von ymin und ymax kann man die y-Achse auch über die Option enlarge y limits (oder enlargelimits für beide Achsen gleichzeitig) vergrößern. Dabei ist auch eine relative Angabe möglich. Zum Beispiel wird mit enlarge y Limits=0.1 die y-Achse um 10% verlängert.

Eine Möglichkeit, die Beschriftung der Ticks für die negativen Werte auf die rechte Seite der y-Achse zu setzen, wäre die explizite Angabe aller Ticks an der y-Achse. Gibt man die positiven Werte bei ytick und die negativen bei extra y ticks an, dann können die negativen mit Hilfe von extra y tick style auf die andere Seite der y-Achse geschoben werden.

Open in writeLaTeX
\documentclass{article}
\pagestyle{empty}% for cropping
\usepackage{mathtools,pgfplots,subcaption}
\pgfplotsset{compat=1.8}
\begin{document}
\begin{figure}
    \centering
    \foreach \N in {3} {
        \begin{subfigure}{0.49\textwidth}
            \centering
            \begin{tikzpicture}
                \begin{axis}[
                        no markers,
                        samples=250, %100
                        smooth,
                        domain=-1.2:1.4,
                        axis lines=middle,
                        width=\linewidth,
%%% Verlängerung der y-Achse
                        enlarge y limits=0.1,
%%% Änderung der Beschriftung der y Ticks
                        ytick={1},
                        extra y ticks={-1},
                        extra y tick style={
                          ticklabel style={
                            anchor=west,
                            xshift=.15cm,
                          },
                        }
%%%
                    ]
                    \xdef\sn{}
                    \foreach \m in {1,...,\N} {
                        \xdef\sn{\sn+4/pi*sin(deg((2*\m-1)*pi*x))/(2*\m-1)}
                    }
                    \expandafter\addplot\expandafter{\sn};
                    \begin{scope}[
                            every node/.style = {draw,fill=black,circle,inner sep=0.5pt}
                        ]
                        \draw (axis cs:0,1) node {} -- (axis cs:0.5,1) node {};
                        \draw (axis cs:0,-1) node {} -- (axis cs:-0.5,-1) node {};
                    \end{scope}
                \end{axis}
            \end{tikzpicture}
            \caption{$S_{\N}(f)(x)$}
        \end{subfigure}
    }
    \caption{Entwicklung in Partialsummen.}
\end{figure}
\end{document}

alt text

Permanenter link

beantwortet 23 Apr '14, 20:01

esdd's gravatar image

esdd
17.8k284257
Akzeptiert-Rate: 62%

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:

×298
×14

gestellte Frage: 23 Apr '14, 16:05

Frage wurde gesehen: 11,887 Mal

zuletzt geändert: 24 Apr '14, 22:04