Stapeldiagramm: Shift einzelner Nodes near Coords

Tabellen und Grafiken erstellen und anordnen


Brombinator
Forum-Newbie
Forum-Newbie
Beiträge: 1
Registriert: Sa 6. Jul 2019, 12:17

Stapeldiagramm: Shift einzelner Nodes near Coords

Beitrag von Brombinator »

Hallo in die Runde,

ich versuche gerade ein gestapeltes Säulendiagramm zu beschriften. Die nodes near coords Umgebung habe ich bereits verwendet und über die nodes near coords align in die Balken verschoben. Teilweise habe ich aber sehr kleine Teile einer Säule, so dass ich einzelne Beschriftungen gerne etwas nach oben verschieben würde. Dazu bin ich in anderen Foren auf den Befehl
every node near coord/.append style={yshift={\ifnum\coordindex=0 4pt \else 0pt \fi}},
gestoßen, mit dem ich auch tatsächlich einzelne Beschriftungen verschieben kann. Allerdings erhalte ich zeitgleich die Fehlermeldung:
Extra\else. \end{axis} und in der Abbildung eine zusätzliche Beschriftung etwas weiter links (s. Bild). Irgendwie komme ich nicht richtig weiter.
Über Hilfe und Unterstützung würde ich mich freuen!

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{filecontents}
\usepackage{pgfplots}
\usepackage{color}

\begin{document}
\begin{tikzpicture}[
every axis/.style={
	ybar stacked,
	width=14cm, height=8cm,
	enlarge x limits=0.15, 
	ytick={0,25,50,75,100,125,150,175},
	ymax = 180,
	xtick={1,2,3,4},
	bar width=0.7cm,
	},
]
%A1-A3
\begin{axis}[bar shift=-15pt,
	nodes near coords={
	\pgfmathfloatifflags{\pgfplotspointmeta}{0}{}{\pgfmathprintnumber{\pgfplotspointmeta}}},
	nodes near coords align={anchor=north},
	point meta=explicit,
	every node near coord/.append style={
	xshift=-15pt,
	black,
	font=\tiny
	},
	]
\addplot coordinates
{(1,51.7)[51.7]
(2,51.7)[51.7]
(3,62.38)[62.38]
(4,0)[0]};
\addplot coordinates
{(1,0)[0]
(2,0)[0]
(3,0)[0]
(4,105.12)[105.12]};
\addplot coordinates
{(1,29.5)[29.5]
(2,29.5)[29.5]
(3,26.5)[26.5]
(4,51.5)[51.5]};
\addplot[
every node near coord/.append style={
yshift={\ifnum\coordindex=0 4pt \else 0pt \fi}
},	
] coordinates
{(1,4)[4.0]
(2,8)[8.0]
(3,0)[0]
(4,0)[0]};
\addplot[every node near coord/.append style={
yshift={\ifnum\coordindex=0 4pt \fi},
yshift={\ifnum\coordindex=1 4pt \fi},
},	
] coordinates
{(1,3.8)[3.8]
(2,3.8)[3.8]
(3,0)[0]
(4,0)[0]};
\end{axis}
\end{tikzpicture}
\end{document}
Dateianhänge
Stapeldiagramm.PNG
Stapeldiagramm.PNG (24.73 KiB) 2216 mal betrachtet