Ich habe von hier den Code übernommen und angepasst: http://texwelt.de/wissen/fragen/6593/pgfplot-mit-zoomfunktion

Das funktioniert auch ganz gut. Da meine x-Achse allerdings Daten als Wert hat, und er alle in xtick={2013-01-01,2013-03-15,2013-03-23,2013-03-30,2013-06-01,2013-12-01}, plottet, überschneiden sich die Werte in Abb. a. 1.

  1. Frage: Wie kann ich das umgehen? An der Stelle links, müsse eigentlich nur der 1.1., 1.6. und 31.12. stehen. Übermalen mit einer weißen Box ginge zur Not auch ;) Nur wie? Gelöst, siehe unten
  2. Frage: Wie kann ich die Option scaled y ticks=base 10:-3 hier integrieren? Ich weiß nicht so recht, an welche Stelle das jetzt muss. Oder anders gefragt: Was muss ich hier yticklabel style={/pgf/number format/.cd,fixed,fixed zerofill,precision=1},ändern, um einmal das 10^3 auf der Achsen (also einmal oben links) zu erhalten? (Noch nicht gelöst)

Code:

Öffne in Overleaf
\documentclass{scrartcl}
\usepackage{amsmath}
\usepackage[normalem]{ulem} 
\usepackage{tikz} 
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
\usetikzlibrary{patterns}
\usepgfplotslibrary{fillbetween}
\usepgfplotslibrary{dateplot} 
\usepackage{subcaption}
\usepackage{filecontents}
\begin{filecontents}{datensuperfein.dat}
x   y
...
\end{filecontents}
\begin{document}

\begin{figure}
  \centering
  \begin{tikzpicture}[
    ausschnitt/.style={blue!50!red}
  ]
    % Befehl für Teilbeschriftungen
    \newcommand\teilbeschriftung[1]{
      \node[below,text width=.45\textwidth] 
        at (current axis.outer south){\subcaption{#1}};
    }
    % Einstellungen für Achsen
    \pgfplotsset{
      myaxis/.style={
        width=.45\textwidth,
        height=0.3\textheight,
        date coordinates in=x,
        xticklabel=\day.\month.,
        xtick={2013-01-01,2013-03-15,2013-03-23,2013-03-30,2013-06-01,2013-12-01},
        ylabel=y,
        yticklabel style={/pgf/number format/.cd,fixed,fixed zerofill,precision=1},
      }
    }
    %
    \begin{axis}[
      myaxis,
      ymin=0,
      ymax=1200,
      %%%%%%%%%%%%HIER MUSS DSA REIN
      xtick={2013-01-01,2013-06-01,2013-12-01},
      %%%%%DANN GEHT ES
      xmin={2013-01-01},
      xmax={2013-12-01},
        ]
      \addplot [ycomb,no markers]table[x=x,y=y]{datensuperfein.dat};
      \draw[ausschnitt]
        (axis cs:{2013-03-15},600)coordinate(ul)--
        (axis cs:{2013-03-30},600)coordinate(ur)--
        (axis cs:{2013-03-30},1050)coordinate(or)--
        (axis cs:{2013-03-15},1050)coordinate(ol)--
        (axis cs:{2013-03-15},600) -- cycle;
      \end{axis}
      \teilbeschriftung{Beschriftung 1}
      % Ausschnitt
      \begin{axis}[
        xshift=.5\textwidth,
        myaxis,
        axis line style=ausschnitt,
        xmin={2013-03-15},
        xmax={2013-03-30},
        ymin=600,ytickmin=450,
        ymax=1050,
      ]
      \addplot [no markers]table [x=x,y=y] {datensuperfein.dat};
      \end{axis}
      \teilbeschriftung{Beschriftung 2}
      % Verbindungslinien
      \draw[ausschnitt]
        (current axis.north west)--(or)
        (current axis.south west)--(ur);
    \end{tikzpicture}
    \caption{Beschriftung insgesamt}
  \end{figure}
\end{document}

alt text

gefragt 21 Mär '17, 12:05

SF6's gravatar image

SF6
15953440
Akzeptiert-Rate: 0%

bearbeitet 22 Mär '17, 08:12

esdd's gravatar image

esdd
17.8k284257

1

Kann gerade nicht testen, aber Ideen: Beschriftung um 90° drehen? Oder einfach nach myaxis noch einmal eine xtick-Option mit weniger Einträgen angeben?

(21 Mär '17, 12:22) gast3

Ja, das war einfacher, als gedacht. Einfach unten noch mal eine xtick={2013-01-01,2013-06-01,2013-12-01},einfügen.

Fehlt nur noch die Frage 2.

(21 Mär '17, 12:39) SF6
1

Wie wäre es, wenn dein Beispiel kompilierbar wäre. Momentan erzeugt es Fehler. superfein.dat ist wohl etwas zu grob.

(23 Mär '17, 20:45) Marco_D

Außerdem soll eine Frage hier eigentlich immer nur eine Frage enthalten. Wir haben genügend Platz für viele Fragen. Eng abgegrenzte Fragen sind nicht nur für die Helfer sondern auch für andere Hilfesuchende besser.

(23 Mär '17, 20:59) saputello

Ich habe es jetzt geschafft, allerdings habe ich dafür folgende gelöscht:

Öffne in Overleaf
    \pgfplotsset{
      myaxis/.style={
        width=.45\textwidth,
        height=0.3\textheight,
  date coordinates in=x,
        xticklabel=\day.\month.,
        xtick={2013-01-01,2013-03-15,2013-03-23,2013-03-30,2013-06-01,2013-12-01},
        ylabel=y,
scaled y ticks=base 10:-3 ,
        yticklabel style={},
      }
    }

yticklabel style={], anstatt wie oben yticklabel style={/pgf/number format/.cd,fixed,fixed zerofill,precision=1 da ich nicht so recht wusste, wozu ich das fixed usw. benötige. Jetzt geht es, aber habe ich damit nicht irgendeinen Fehler eingebaut? (vlg. oben)

Permanenter link

beantwortet 21 Mär '17, 13:03

SF6's gravatar image

SF6
15953440
Akzeptiert-Rate: 0%

bearbeitet 21 Mär '17, 13:04

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
×19
×1

gestellte Frage: 21 Mär '17, 12:05

Frage wurde gesehen: 6,527 Mal

zuletzt geändert: 23 Mär '17, 20:59