cis hat geschrieben: ↑Di 4. Aug 2020, 19:01
Möglicherweise wird es (für die professionelle Umsetzung) weder das eine noch das andere brauchen, sondern die bereits erwähnte plot option ybar interval stacked (vgl. Handbuch).
Im Handbuch finden sich dazu nur zwei Einträge, die nicht sonderlich aufschlussreich für einen Latexanfänger sind. Dazu fehlt mir dann wohl doch die Erfahrung und ein passendes Beispiel.
cis hat geschrieben: ↑Di 4. Aug 2020, 19:01
Bei komplexeren Ausgangsdaten wird das schnell unübersichtlich.
Das ist verständlich. Bei meiner Zielanwendung sollen später nur fünf Säulen miteinander verglichen werden, daher habe ich von der Verwendung einer weiteren externen Datei abgesehen. Für den Fall der Fälle weiß ich aber, wo ich dann nachgucken kann. Vielen Dank dafür.
Bezüglich der Schrift Arial habe ich vor ein paar Monaten in meinem Dokument umgestellt auf Lualatex. Es gab auch noch andere Aspekte, die mich dazu gezwungen haben. Da ich an Vorgaben bezüglich der Gestaltung gebunden bin, werde ich diese Strategie bei dem aktuellen Dokument wohl weiter verwenden.
cis hat geschrieben: ↑Di 4. Aug 2020, 22:39
Da der Startpost ellenlang beschreibt, aber kein kurzes Minimalbeispiel angibt, insb. keine exemplarische Tabelle mit Eingangsdaten, ist der Helfer weitgehend auf persönliche Spekulation angewiesen, was da was sein soll und wie sein soll und was wo drannstehen soll.
Ich hatte es bewusst etwas offen gelassen, da ich in diesem Bereich nicht viel Erfahrung habe, fand ich es unpassend mich frühzeitig auf eine Strategie zu fixieren. Das genannte Beispiel finde ich mit der Implementierung der Tabelle und den Farben interessant. Ich werde versuchen, dies zu übernehmen um Änderungen schneller durchführen zu können.
Aktuell habe ich folgenden Zwischenstand:
\documentclass{article}
\usepackage{pgfplots, pgfplotstable} % Säulendiagramm
\pgfplotsset{compat=1.16} % =
\makeatletter
\newcommand\resetstackedplots{
%\makeatletter
\pgfplots@stacked@isfirstplottrue
%\makeatother
%\addplot [forget plot,draw=none] coordinates{(1,0) (2,0) (3,0)};
}
%\makeatother
\begin{document}
\begin{tikzpicture}
\pgfplotsset{
show sum on top/.style={
/pgfplots/scatter/@post marker code/.append code={%
\node[
at={(normalized axis cs:%
\pgfkeysvalueof{/data point/x},%
\pgfkeysvalueof{/data point/y})%
},
anchor=south,
]
{\pgfmathprintnumber{\pgfkeysvalueof{/data point/y}}};
},
},
}
\begin{axis}[
ybar stacked,
nodes near coords,
symbolic x coords={I,II},
xtick=data,
ymin=0,
enlarge x limits=0.5,
legend entries={A,B,C}
]
\addplot +[bar width=1cm,bar shift=0cm] coordinates {(I,1) (II,1)};
\addplot +[bar width=0.5cm,bar shift=-.25cm,show sum on top] coordinates {(I,1) (II,2.5)};
\resetstackedplots
\addplot +[bar width=1cm,bar shift=0cm] coordinates {(I,1) (II,1)};
\addplot +[bar width=0.5cm,bar shift=.25cm,show sum on top] coordinates {(I,0.5) (II,2)};
\end{axis}
\end{tikzpicture}
Mit \resetstackedplots kann ich die blaue Säule erneut zeichnen lassen und die graue Säule entsprechend darüber platzieren. Es sind also zwei sich überlagernde Diagramme. Ist vielleicht etwas geschummelt, aber bisher habe ich daraus noch keinen Nachteil entdecken können. Die Angabe der Summe ist richtig berechnet, wenn auch die Position zentraler über der roten und grauen Säule sein dürfte.
Was könnte man in die eckigen Klammern bei \addplot + ergänzen, um die Position der Summe zu verändern?