Ich denke, mein Problem wird mit folgendem Code deutlich:

Öffne in Overleaf
\documentclass{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}

\begin{document}
\begin{tikzpicture}
\begin{semilogyaxis}[
    ybar,
    log origin=infty,
    width = 0.9\linewidth,
    ymin=1.0e-12,
    ymax=1.0e-05,
    ylabel={Ereignisse},
    yticklabel style=blue,
    ytick style=blue,
    ylabel style=blue,
    axis y line*=left,
    symbolic x coords={2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014},
]

\addplot+[ybar, blue, bar shift=-0.2cm] coordinates {
  (2006, 2.29e-09)
  (2007, 1.35e-07)
  (2008, 4.00e-12)
  (2009, 0.00e+00)
  (2010, 0.00e+00)
  (2011, 1.36e-07)
  (2012, 8.96e-07)
  (2013, 6.72e-11)
  (2014, 4.70e-06)
};
\end{semilogyaxis}

\begin{axis}[
    ybar,
    width = 0.9\linewidth,
    ymin=0,
    ymax=100,
    ylabel = {Anteil an Gesamtereignissen (\%)},
    yticklabel style=red,
    ytick style=red,
    ylabel style=red,
    axis y line*=right,
    symbolic x coords={2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014},
    % hide x axis
]

\addplot+[ybar, red, bar shift=0.2cm] coordinates {
  (2006, 2.36)
  (2007, 42.11)
  (2008, 0.00)
  (2009, 0.00)
  (2010, 0.00)
  (2011, 40.37)
  (2012, 57.07)
  (2013, 0.05)
  (2014, 106.03)
};
\end{axis}
\end{tikzpicture}
\end{document}

Die beiden x-Achsen liegen nicht übereinander.

Bild

gefragt 08 Dez '15, 16:23

dzaic's gravatar image

dzaic
57124151
Akzeptiert-Rate: 46%

bearbeitet 16 Mär '17, 09:25

saputello's gravatar image

saputello
10.8k103963


In Deinem zweiten Plot ist der letzte Funktionswert größer als ymax, weshalb der nicht mehr dargestellt wird. Dadurch hat die Achse des zweiten Plots einen Teilstrich weniger. Sie geht nur bis 2013. Als Folge davon sind die Abstände zwischen den Teilstrichen des zweien Plots größer und die roten Balken verrutschen.

Du muss also eigentlich nur ymax für den zweiten Plot auf mindestens 106.03 vergrößern. Oder Du lässt die Angabe von ymax einfach weg, dann bekommst Du

alt text

Außerdem würde ich die Sachen, die für beide Plots gleich sind oder sogar sein müssen, an nur einer Stelle einstellen.

Open in Online-Editor
\documentclass{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}

\begin{document}
\begin{tikzpicture}
\pgfplotsset{
  every axis/.style={
    ybar,
    width=.9\linewidth,
    symbolic x coords={2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014}
}}
\begin{semilogyaxis}[
    log origin=infty,
    ymin=1.0e-12,
    ymax=1.0e-05,
    ylabel={Ereignisse},
    yticklabel style=blue,
    ytick style=blue,
    ylabel style=blue,
    axis y line*=left,
]

\addplot+[blue, bar shift=-0.2cm] coordinates {
  (2006, 2.29e-09)
  (2007, 1.35e-07)
  (2008, 4.00e-12)
  (2009, 0.00e+00)
  (2010, 0.00e+00)
  (2011, 1.36e-07)
  (2012, 8.96e-07)
  (2013, 6.72e-11)
  (2014, 4.70e-06)
};
\end{semilogyaxis}

\begin{axis}[
    ymin=0,
    %ymax=107,% <- ymax=100 war zu klein
    ylabel = {Anteil an Gesamtereignissen (\%)},
    yticklabel style=red,
    ytick style=red,
    ylabel style=red,
    axis y line*=right,
    %hide x axis
]

\addplot+[red, bar shift=0.2cm] coordinates {
  (2006, 2.36)
  (2007, 42.11)
  (2008, 0.00)
  (2009, 0.00)
  (2010, 0.00)
  (2011, 40.37)
  (2012, 57.07)
  (2013, 0.05)
  (2014, 106.03)
};
\end{axis}
\end{tikzpicture}
\end{document}
Permanenter link

beantwortet 08 Dez '15, 20:08

esdd's gravatar image

esdd
15.9k164055
Akzeptiert-Rate: 63%

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

gestellte Frage: 08 Dez '15, 16:23

Frage wurde gesehen: 4,804 Mal

zuletzt geändert: 08 Dez '15, 20:08