Gestapeltes Säulendiagramm

Tabellen und Grafiken erstellen und anordnen


ChrisFin94
Forum-Anfänger
Forum-Anfänger
Beiträge: 13
Registriert: Sa 5. Jan 2019, 11:41

Gestapeltes Säulendiagramm

Beitrag von ChrisFin94 »

Hallo ich,
ich würde gerne die Legende rechts neben dem Säulendiagramm positionieren. Zusätzlich sollen die Säulen weiter auseinander liegen und graue Hilfslinien im Hintergrund sein.

Ich komme leider nicht weiter.

Danke für die Hilfe im Voraus.
\begin{center}
\begin{tikzpicture}
\begin{axis}[
ybar stacked,
bar width=20pt,
nodes near coords,
enlargelimits=0.15,
legend pos=outer north east,
legend style={at={(0.5,-0.20)},
	anchor=north,legend columns=-1},
ylabel={\%},
symbolic x coords={Basel II, 2013, 2014, 2015, 
	2016, 2017, 2018,2019},
xtick=data,
x tick label style={},
]
%Blau Hartes Kernkapital,
\addplot+[ybar] plot coordinates {(Basel II,2) (2013,3.5) 
	(2014,4) (2015,4.5) (2016,4.5) (2017,4.5) (2018,4.5) (2019,4.5)};
%erweitertes Kernkapital
\addplot+[ybar] plot coordinates {(Basel II,2) (2013,1) 
	(2014,1.5) (2015,1.5) (2016,1.5) (2017,1.5) (2018,1.5) (2019,1.5)};

\addplot+[ybar] plot coordinates {(Basel II,4) (2013,3.5)
	(2014,2.5) (2015,2) (2016,2) (2017,2) (2018,2) (2019,2)};
%grau
\addplot+[ybar] plot coordinates {(Basel II,0) (2013,0) 
	(2014,0) (2015,0) (2016,0.625) (2017,1.25) (2018,1.875)(2019,2.5)};

\addplot+[ybar] plot coordinates {(Basel II,0) (2013,0) 
	(2014,0) (2015,0) (2016,0.6) (2017,1.3) (2018,1.9)(2019,2.5)};

\addplot+[ybar] plot coordinates {(Basel II,0) (2013,3) 
	(2014,5) (2015,5) (2016,5) (2017,5) (2018,5)(2019,5)};
\legend{Hartes Kernkapital,erweitertes Kernkapital,  Ergänzungskapital,  Kapitalerhaltungspuffer, Antizyklischer Kapitalpuffer,Systemische Kapitalpuffer}
\end{axis}

\end{tikzpicture}
\end{center}

Bartman
Forum-Meister
Forum-Meister
Beiträge: 2456
Registriert: Do 16. Jul 2009, 21:41
Wohnort: Hessische Provinz

Beitrag von Bartman »

Dein Beispiel ist unvollständig.

Wie wäre es damit?
\documentclass{scrartcl}
\usepackage{selinput}% https://texwelt.de/wissen/fragen/5546
\SelectInputMappings{
	adieresis={ä},
	germandbls={ß}
}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[ngerman]{babel}
\usepackage{pgfplots}
\usepackage{showframe}

\pgfplotsset{compat=1.16}

\begin{document}
\begin{center}
\begin{tikzpicture}[scale=.8]
\begin{axis}[
	width=12cm,
	ybar stacked,
	bar width=15pt,
	nodes near coords,
	enlargelimits=0.15,
	legend pos=outer north east,
	ymajorgrids,
	legend style={cells={anchor=west}},
	ylabel={\%},
	symbolic x coords={Basel II, 2013, 2014, 2015, 
		2016, 2017, 2018,2019},
	xtick=data
]
%Blau Hartes Kernkapital,
\addplot+ plot coordinates {(Basel II,2) (2013,3.5)
   (2014,4) (2015,4.5) (2016,4.5) (2017,4.5) (2018,4.5) (2019,4.5)};

%erweitertes Kernkapital
\addplot+ plot coordinates {(Basel II,2) (2013,1)
   (2014,1.5) (2015,1.5) (2016,1.5) (2017,1.5) (2018,1.5) (2019,1.5)};

\addplot+ plot coordinates {(Basel II,4) (2013,3.5)
   (2014,2.5) (2015,2) (2016,2) (2017,2) (2018,2) (2019,2)};

%grau
\addplot+ plot coordinates {(Basel II,0) (2013,0)
   (2014,0) (2015,0) (2016,0.625) (2017,1.25) (2018,1.875)(2019,2.5)};

\addplot+ plot coordinates {(Basel II,0) (2013,0)
   (2014,0) (2015,0) (2016,0.6) (2017,1.3) (2018,1.9)(2019,2.5)};

\addplot+ plot coordinates {(Basel II,0) (2013,3)
   (2014,5) (2015,5) (2016,5) (2017,5) (2018,5)(2019,5)};

\legend{Hartes Kernkapital,erweitertes Kernkapital, Ergänzungskapital, 
	Kapitalerhaltungspuffer, Antizyklischer Kapitalpuffer,Systemische Kapitalpuffer}
\end{axis}
\end{tikzpicture}
\end{center}
\end{document}
Zuletzt geändert von Bartman am Sa 5. Jan 2019, 13:55, insgesamt 2-mal geändert.

ChrisFin94
Forum-Anfänger
Forum-Anfänger
Beiträge: 13
Registriert: Sa 5. Jan 2019, 11:41

Beitrag von ChrisFin94 »

Hallo Bartman,

vielen Dank das Hilft mir schon mal sehr. Bekommt man auch den Rahmen weg ?
Die Schritte auf der y-Achse sollten 4,8,12,16,20 sein. Gerne würde ich auch die Farbe der Säulen individuell anpassen und dieses Diagramm müsste im Abbilungsverzeichnis verlinkt sein.

Bartman
Forum-Meister
Forum-Meister
Beiträge: 2456
Registriert: Do 16. Jul 2009, 21:41
Wohnort: Hessische Provinz

Beitrag von Bartman »

Welchen Rahmen meinst Du? Ich habe mal den Rahmen der Legende entfernt.

In Deiner LaTeX-Einführung müsste erwähnt werden, wie Du die Beschriftung Deiner Abbildungen ins gleichnamige Verzeichnis einfügen kannst. Oft wird das aber nur für Gleitumgebungen beschrieben.
\documentclass{scrartcl}
\usepackage{selinput}% https://texwelt.de/wissen/fragen/5546
\SelectInputMappings{
	adieresis={ä},
	germandbls={ß}
}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[ngerman]{babel}
\usepackage{pgfplots}
\usepackage{showframe}

\pgfplotsset{compat=1.16}

\begin{document}
\listoffigures
\begin{center}
\begin{tikzpicture}[scale=.8]
\begin{axis}[
	width=12cm,
	ybar stacked,
	bar width=15pt,
	nodes near coords,
	enlargelimits=0.15,
	legend pos=outer north east,
	ymajorgrids,
	legend style={draw=none, cells={anchor=west}},
	ylabel={\%},
	ytick={4,8,...,20},
	symbolic x coords={Basel II, 2013, 2014, 2015, 
		2016, 2017, 2018,2019},
	xtick=data
]
%Blau Hartes Kernkapital,
\addplot+ plot coordinates {(Basel II,2) (2013,3.5)
   (2014,4) (2015,4.5) (2016,4.5) (2017,4.5) (2018,4.5) (2019,4.5)};

%erweitertes Kernkapital
\addplot+ plot coordinates {(Basel II,2) (2013,1)
   (2014,1.5) (2015,1.5) (2016,1.5) (2017,1.5) (2018,1.5) (2019,1.5)};

\addplot+ plot coordinates {(Basel II,4) (2013,3.5)
   (2014,2.5) (2015,2) (2016,2) (2017,2) (2018,2) (2019,2)};

%grau
\addplot+ plot coordinates {(Basel II,0) (2013,0)
   (2014,0) (2015,0) (2016,0.625) (2017,1.25) (2018,1.875)(2019,2.5)};

\addplot+ plot coordinates {(Basel II,0) (2013,0)
   (2014,0) (2015,0) (2016,0.6) (2017,1.3) (2018,1.9)(2019,2.5)};

\addplot+ plot coordinates {(Basel II,0) (2013,3)
   (2014,5) (2015,5) (2016,5) (2017,5) (2018,5)(2019,5)};

\legend{Hartes Kernkapital,erweitertes Kernkapital, Ergänzungskapital, 
	Kapitalerhaltungspuffer, Antizyklischer Kapitalpuffer,Systemische Kapitalpuffer}
\end{axis}
\end{tikzpicture}
\captionof{figure}{Beschriftung}
\end{center}
\end{document}

ChrisFin94
Forum-Anfänger
Forum-Anfänger
Beiträge: 13
Registriert: Sa 5. Jan 2019, 11:41

Beitrag von ChrisFin94 »

Entschuldige die Ungenauigkeit.

Ich meinte den Kasten um das Diagramm. Am schönsten wäre es, wenn man wirklich nur die Linien für die y-Achse und die x-Achse sieht.

Die Null auf der x-Achse habe ich selber hinzugefügt bekommen. Die Balken sollen wirklich bei 0 Null anfangen. Es soll kein strich zwischen x-Achse und Balken sein. Genauso soll kein Strich zwischen oberer Linie und der letzten Hilfslinie sein.

Bartman
Forum-Meister
Forum-Meister
Beiträge: 2456
Registriert: Do 16. Jul 2009, 21:41
Wohnort: Hessische Provinz

Beitrag von Bartman »

Mir sind Deine Wünsche für die Gestaltung der Linien nicht ganz klar. Ich habe versucht, mein Verständnis Deiner Beschreibung im folgenden Beispiel umzusetzen.
\documentclass{scrartcl}
\usepackage{selinput}% https://texwelt.de/wissen/fragen/5546
\SelectInputMappings{
	adieresis={ä},
	germandbls={ß}
}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[ngerman]{babel}
\usepackage{pgfplots}
\usepackage{showframe}

\pgfplotsset{
	compat=1.16,
	/pgf/number format/use comma% Dezimaltrennzeichen an die Dokumentsprache anpassen
}

\begin{document}
\listoffigures
\begin{center}
\begin{tikzpicture}[scale=.8]
\begin{axis}[
	width=12cm,
	axis y line=left,
	axis x line=bottom,
	x axis line style={opacity=0},
	ybar stacked,
	bar width=15pt,
	nodes near coords,
	enlargelimits=0.15,
	legend pos=outer north east,
	ymajorgrids,
	legend style={cells={anchor=west}},
	ylabel={\%},
	ytick={0,4,...,20},
	symbolic x coords={Basel II, 2013, 2014, 2015, 
		2016, 2017, 2018,2019},
	xtick=data
]
%Blau Hartes Kernkapital,
\addplot+[draw=yellow, fill=yellow!30] plot coordinates {(Basel II,2) (2013,3.5)% Farbe geändert
   (2014,4) (2015,4.5) (2016,4.5) (2017,4.5) (2018,4.5) (2019,4.5)};

%erweitertes Kernkapital
\addplot+ plot coordinates {(Basel II,2) (2013,1)
   (2014,1.5) (2015,1.5) (2016,1.5) (2017,1.5) (2018,1.5) (2019,1.5)};

\addplot+ plot coordinates {(Basel II,4) (2013,3.5)
   (2014,2.5) (2015,2) (2016,2) (2017,2) (2018,2) (2019,2)};

%grau
\addplot+ plot coordinates {(Basel II,0) (2013,0)
   (2014,0) (2015,0) (2016,0.625) (2017,1.25) (2018,1.875)(2019,2.5)};

\addplot+ plot coordinates {(Basel II,0) (2013,0)
   (2014,0) (2015,0) (2016,0.6) (2017,1.3) (2018,1.9)(2019,2.5)};

\addplot+ plot coordinates {(Basel II,0) (2013,3)
   (2014,5) (2015,5) (2016,5) (2017,5) (2018,5)(2019,5)};

\legend{Hartes Kernkapital,erweitertes Kernkapital, Ergänzungskapital, 
	Kapitalerhaltungspuffer, Antizyklischer Kapitalpuffer,Systemische Kapitalpuffer}
\end{axis}
\end{tikzpicture}
\captionof{figure}{Beschriftung}
\end{center}
\end{document}

ChrisFin94
Forum-Anfänger
Forum-Anfänger
Beiträge: 13
Registriert: Sa 5. Jan 2019, 11:41

Beitrag von ChrisFin94 »

Ich möchte, dass man die x-Achse wie die y-Achse sieht.
Für die y-Achse ist das perfekt. Die Striche oberhalb der x-Achsenbeschriftung sollen nicht zu sehen sein, wenn das möglich ist.

Die Schrift soll in den Säulen Schwarz sein. Die Zahlen brauchen ein Prozentzeichen.
Dateianhänge
Bildschirmfoto 2019-01-05 um 15.05.09.png
Bildschirmfoto 2019-01-05 um 15.05.09.png (60.69 KiB) 3076 mal betrachtet

Bartman
Forum-Meister
Forum-Meister
Beiträge: 2456
Registriert: Do 16. Jul 2009, 21:41
Wohnort: Hessische Provinz

Beitrag von Bartman »

Wenn Du die senkrechten Striche zwischen der Beschriftung der Balken an der x-Achse und dem unteren Ende der Balken meinst, dann weiß ich da gerade nicht weiter.
\documentclass{scrartcl}
\usepackage{selinput}% https://texwelt.de/wissen/fragen/5546
\SelectInputMappings{
	adieresis={ä},
	germandbls={ß}
}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[ngerman]{babel}
\usepackage{pgfplots}
\usepackage{showframe}

\pgfplotsset{
	compat=1.16,
	/pgf/number format/use comma
}

\begin{document}
\listoffigures
\begin{center}
\begin{tikzpicture}[scale=.8]
\begin{axis}[
	width=12cm,
	axis y line=left,
	axis x line=bottom,
	ybar stacked,
	bar width=15pt,
	nodes near coords={\pgfmathprintnumber\pgfplotspointmeta\,\%},% Prozentzeichen ergänzt
	nodes near coords style={color=black},% Farbe der Schrift in den Balken
	enlargelimits=0.15,
	legend pos=outer north east,
	ymajorgrids,
	legend cell align=left,
	ylabel={\%},
	ytick={0,4,...,20},
	symbolic x coords={Basel II, 2013, 2014, 2015, 
		2016, 2017, 2018,2019},
	xtick=data
]
%Blau Hartes Kernkapital,
\addplot+[draw=yellow, fill=yellow!30] plot coordinates {(Basel II,2) (2013,3.5)
   (2014,4) (2015,4.5) (2016,4.5) (2017,4.5) (2018,4.5) (2019,4.5)};

%erweitertes Kernkapital
\addplot+ plot coordinates {(Basel II,2) (2013,1)
   (2014,1.5) (2015,1.5) (2016,1.5) (2017,1.5) (2018,1.5) (2019,1.5)};

\addplot+ plot coordinates {(Basel II,4) (2013,3.5)
   (2014,2.5) (2015,2) (2016,2) (2017,2) (2018,2) (2019,2)};

%grau
\addplot+ plot coordinates {(Basel II,0) (2013,0)
   (2014,0) (2015,0) (2016,0.625) (2017,1.25) (2018,1.875)(2019,2.5)};

\addplot+ plot coordinates {(Basel II,0) (2013,0)
   (2014,0) (2015,0) (2016,0.6) (2017,1.3) (2018,1.9)(2019,2.5)};

\addplot+ plot coordinates {(Basel II,0) (2013,3)
   (2014,5) (2015,5) (2016,5) (2017,5) (2018,5)(2019,5)};

\legend{Hartes Kernkapital,erweitertes Kernkapital, Ergänzungskapital, 
	Kapitalerhaltungspuffer, Antizyklischer Kapitalpuffer,Systemische Kapitalpuffer}
\end{axis}
\end{tikzpicture}
\captionof{figure}{Beschriftung}
\end{center}
\end{document}

Rolli
Forum-Guru
Forum-Guru
Beiträge: 382
Registriert: Mi 15. Feb 2017, 08:50
Wohnort: Mittelfranken

Beitrag von Rolli »

Die "x tick marks" verschwinden mit
xtick style={draw=none},
.

Gruß vom Rolli

ChrisFin94
Forum-Anfänger
Forum-Anfänger
Beiträge: 13
Registriert: Sa 5. Jan 2019, 11:41

Beitrag von ChrisFin94 »

Super. Ist es jetzt noch möglich, dass zwischen x-Achse und Balken kein Abstand mehr ist ?

Die 0 soll in der linken unteren Ecke des Diagramms sein und die Balken sollen von der x-Achse aus starten.

Antworten