Folgendes Minimalbeispiel verdeutlich mein "Problem":

Open in Online-Editor
\documentclass{standalone}

\usepackage{pgfplots}

\begin{document}
\begin{tikzpicture}
  \begin{axis}[
    height=7cm,
    width=\textwidth,
    ybar,
    xmin = 1984, xmax = 2015,
    ymin = 0, ymax = 2,
    xtick={1985,...,2015},
    x tick label style={rotate=90, anchor=east, /pgf/number format/1000 sep=},
    ylabel={Number of failure},
    ytick={0,...,2}
    ]
  \addplot coordinates {
    (1985, 0)
    (1986, 0)
    (1987, 0)
    (1988, 0)
    (1989, 0)
    (1990, 0)
    (1991, 0)
    (1992, 0)
    (1993, 0)
    (1994, 0)
    (1995, 0)
    (1996, 0)
    (1997, 0)
    (1998, 0)
    (1999, 0)
    (2000, 0)
    (2001, 0)
    (2002, 0)
    (2003, 0)
    (2004, 0)
    (2005, 0)
    (2006, 0)
    (2007, 0)
    (2008, 0)
    (2009, 0)
    (2010, 0)
    (2011, 0)
    (2012, 0)
    (2013, 0)
    (2014, 0)
    (2015, 0)
    (2012, 1)
  };
    \end{axis}
  \end{tikzpicture}
\end{document}

Wie kann ich nun den Abstand des ylabels Number of failure zur y-Achse verringern?

gefragt 20 Aug '15, 11:44

dzaic's gravatar image

dzaic
57124151
Akzeptiert-Rate: 46%


Um eine automatische gute Positionierung der Achsenlabel zu erreichen, verwende eine pgfplots Version ab 1.8 und setze compat gleich der Nummer dieser Version oder nimm compat=newest. Ergänze einfach in der Präambel

Open in Online-Editor
\pgfplotsset{compat=1.12}% derzeit aktuelle Version

oder

Open in Online-Editor
\pgfplotsset{compat=newest}% es muss mindestens Version 1.8 installiert sein

alt text

Permanenter link

beantwortet 20 Aug '15, 12:06

esdd's gravatar image

esdd
15.9k164055
Akzeptiert-Rate: 63%

Wenn Dir die automatische Verbesserung der Positionierung (siehe Antwort von @esdd) nicht genügt, geht es auch hier wieder (zusätzlich) manuell:

Open in Online-Editor
\documentclass{standalone}

\usepackage{pgfplots}
\pgfplotsset{compat=newest}

\begin{document}
\begin{tikzpicture}
  \begin{axis}[
    height=7cm,
    width=\textwidth,
    ybar,
    xmin = 1984, xmax = 2015,
    ymin = 0, ymax = 2,
    xtick={1985,...,2015},
    x tick label style={rotate=90, anchor=east, /pgf/number format/1000 sep=},
    ylabel={Number of failure},
    ytick={0,...,2},
    y tick label style={xshift=.2em},
    y label style={yshift=-.5em},
    ]
  \addplot coordinates {
    (1985, 0)
    (1986, 0)
    (1987, 0)
    (1988, 0)
    (1989, 0)
    (1990, 0)
    (1991, 0)
    (1992, 0)
    (1993, 0)
    (1994, 0)
    (1995, 0)
    (1996, 0)
    (1997, 0)
    (1998, 0)
    (1999, 0)
    (2000, 0)
    (2001, 0)
    (2002, 0)
    (2003, 0)
    (2004, 0)
    (2005, 0)
    (2006, 0)
    (2007, 0)
    (2008, 0)
    (2009, 0)
    (2010, 0)
    (2011, 0)
    (2012, 0)
    (2013, 0)
    (2014, 0)
    (2015, 0)
    (2012, 1)
  };
    \end{axis}
  \end{tikzpicture}
\end{document}

noch näher

Zu beachten ist, dass die Verschiebung relativ zur Ausrichtung des ylabel geschieht, also ein negatives yshift – und damit ausgehend von der Leserichtung des Labels nach unten – benötigt wird.

Permanenter link

beantwortet 20 Aug '15, 12:10

saputello's gravatar image

saputello
10.8k103963
Akzeptiert-Rate: 51%

bearbeitet 20 Aug '15, 14:13

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:

×279

gestellte Frage: 20 Aug '15, 11:44

Frage wurde gesehen: 9,844 Mal

zuletzt geändert: 20 Aug '15, 14:13