Überarbeitungsverlauf[Zurück]
Klicke auf Einblenden/Ausblenden von Überarbeitungen 3
Habe das unschöne Beispiel rausgeschmissen.

09 Apr '18, 22:47

Gel%C3%B6scht's gravatar image

Gelöscht
(ausgesetzt)

Eine recht ähnliche Frage wurde schon [hier](https://tex.stackexchange.com/a/155053/121799) beantwortet, und die Antwort ist Grundlage für meine folgende Antwort. Der wesentliche Trick ist append after command={ % % von https://tex.stackexchange.com/a/155053/121799 coordinate (x) at (axis direction cs:-\pgfkeysvalueof{/data point/x}+\pgfkeysvalueof{/pgfplots/xmin},0) node [anchor=east] at (x|-mynode-\coordindex) {\MonatName{\Monat} '\Jahr}} wo eigentlich nur das mit der `coordinate (x)` von mir kommt. Das ermöglicht es, die Node richtig zu platzieren, wenn man , anders als in [dieser Antwort](https://tex.stackexchange.com/a/155053/121799) mehr als ein`\addplot` hat. Das Ergebnis ist ist (nach Feedback) \documentclass[border=5mm]{standalone} \usepackage{xstring} % Hoechstwahrscheinlich gibt es das Macro schon irgendwo... \newcommand\MonatName[1]{\ifcase#1 Schmarrn \or Jan \or Feb \or Mrz \or Apr \or Mai \or Jun \or Jul \or Aug \or Sep \or Okt \or Nov \or Dez \fi} \usepackage{pgfplots, amsmath} \pgfplotsset{compat=1.13, %north west common/.style={postaction={pattern=north east lines}}, 2017AD/.style={common, pattern color=red!70, fill=red!40, draw=red}, 2018AD/.style={common, pattern color= blue!70, fill=blue!40, draw=blue}, }% \usetikzlibrary{patterns} \begin{document} \begin{tikzpicture}[scale=0.75] \begin{axis}[ xbar, enlarge x limits=0.45, limits=0.35, % font=\footnotesize\sffamily, % ytick = data, y = 1cm, ymin=0.4, ymax=3.6, % nodes near coords={\Mitglieder \ [\Fragen]}, every node near coord/.append style={name=mynode-\coordindex, xshift=0pt,font=\footnotesize,append after command={ % % von https://tex.stackexchange.com/a/155053/121799 coordinate (x) at (axis direction cs:-\pgfkeysvalueof{/data point/x}+\pgfkeysvalueof{/pgfplots/xmin},0) node [anchor=east] [anchor=west] at (x|-mynode-\coordindex) {\MonatName{\Monat} '\Jahr}}},%anchor=east, '\StrMid{\Jahr}{3}{4}}}},%anchor=east, visualization depends on={value \thisrowno{2} \as \Mitglieder}, visualization depends on={value \thisrowno{3} \as \Fragen}, visualization depends on={value \thisrowno{0} \as \Monat}, visualization depends on={value \thisrowno{1} \as \Jahr}, % xlabel={Neue Mitglieder}, ylabel={Kalendermonat}, legend entries={02.2017-01.2018 ,02.2016-01.2017}, legend columns=2, legend style={anchor=south,legend pos= north west,yshift=1cm, draw=none } ] \addplot [2017AD] table[x index=2, y index=0] { 1 2018 128 110 3 2017 110 94 2 2017 144 128 }; \addplot [2018AD] table[x index=2, y index=0] { 1 2017 205 208 3 2016 161 146 2 2016 172 167 }; \end{axis} \end{tikzpicture} \end{document} [![alt text][1]][2] Mir ist klar, dass der "Kalendermonat" nicht mit den neuen Labels überlappen sollte, allerdings ist hier vielleicht überflüssig. Der Grund, warum ich ihn da gelassen habe, ist, dass ich denke, dass man, wie auch in [der obigen Antwort](https://tex.stackexchange.com/a/155053/121799), den Anker auf `west` setzen sollte. append after command={ % % von https://tex.stackexchange.com/a/155053/121799 coordinate (x) at (axis direction cs:-\pgfkeysvalueof{/data point/x}+\pgfkeysvalueof{/pgfplots/xmin},0) node [anchor=west] at (x|-mynode-\coordindex) {\MonatName{\Monat} '\Jahr}} [![alt text][3]][3] weil das m.E. besser ausschaut. Egal wie, ich kann meine Antwort gerne nach Feedback anpassen. text][1]][1] [1]: https://texwelt.de/wissen/upfiles/Screen_Shot_2018-04-08_at_6.15.52_PM.png [2]: https://texwelt.de/wissen/upfiles/Screen_Shot_2018-04-08_at_6.15.52_PM.png [3]: https://texwelt.de/wissen/upfiles/Screen_Shot_2018-04-08_at_6.23.46_PM.pnghttps://texwelt.de/wissen/upfiles/Screen_Shot_2018-04-09_at_1.27.14_PM.png
Klicke auf Einblenden/Ausblenden von Überarbeitungen 2
Codestück formatiert

09 Apr '18, 09:21

esdd's gravatar image

esdd
17.8k304257

Eine recht ähnliche Frage wurde schon [hier](https://tex.stackexchange.com/a/155053/121799) beantwortet, und die Antwort ist Grundlage für meine folgende Antwort. Der wesentliche Trick ist append after command={ % % von https://tex.stackexchange.com/a/155053/121799 coordinate (x) at (axis direction cs:-\pgfkeysvalueof{/data point/x}+\pgfkeysvalueof{/pgfplots/xmin},0) node [anchor=east] at (x|-mynode-\coordindex) {\MonatName{\Monat} '\Jahr}} wo eigentlich nur das mit der `coordinate (x)` von mir kommt. Das ermöglicht es, die Node richtig zu platzieren, wenn man , anders als in [dieser Antwort](https://tex.stackexchange.com/a/155053/121799) mehr als ein`\addplot` hat. Das Ergebnis ist \documentclass[border=5mm]{standalone} % Hoechstwahrscheinlich gibt es das Macro schon irgendwo... \newcommand\MonatName[1]{\ifcase#1 Schmarrn \or Jan \or Feb \or Mrz \or Apr \or Mai \or Jun \or Jul \or Aug \or Sep \or Okt \or Nov \or Dez \fi} \usepackage{pgfplots, amsmath} \pgfplotsset{compat=1.13, %north west common/.style={postaction={pattern=north east lines}}, 2017AD/.style={common, pattern color=red!70, fill=red!40, draw=red}, 2018AD/.style={common, pattern color= blue!70, fill=blue!40, draw=blue}, }% \usetikzlibrary{patterns} \begin{document} \begin{tikzpicture}[scale=0.75] \begin{axis}[ xbar, enlarge x limits=0.45, % font=\footnotesize\sffamily, % ytick = data, y = 1cm, ymin=0.4, ymax=3.6, % nodes near coords={\Mitglieder \ [\Fragen]}, every node near coord/.append style={name=mynode-\coordindex, xshift=0pt,font=\footnotesize,append after command={ % % von https://tex.stackexchange.com/a/155053/121799 coordinate (x) at (axis direction cs:-\pgfkeysvalueof{/data point/x}+\pgfkeysvalueof{/pgfplots/xmin},0) node [anchor=east] at (x|-mynode-\coordindex) {\MonatName{\Monat} '\Jahr}}},%anchor=east, visualization depends on={value \thisrowno{2} \as \Mitglieder}, visualization depends on={value \thisrowno{3} \as \Fragen}, visualization depends on={value \thisrowno{0} \as \Monat}, visualization depends on={value \thisrowno{1} \as \Jahr}, % xlabel={Neue Mitglieder}, ylabel={Kalendermonat}, legend entries={02.2017-01.2018 ,02.2016-01.2017}, legend columns=2, legend style={anchor=south,legend pos= north west,yshift=1cm, draw=none } ] \addplot [2017AD] table[x index=2, y index=0] { 1 2018 128 110 3 2017 110 94 2 2017 144 128 }; \addplot [2018AD] table[x index=2, y index=0] { 1 2017 205 208 3 2016 161 146 2 2016 172 167 }; \end{axis} \end{tikzpicture} \end{document} [![alt text][1]][2] Mir ist klar, dass der "Kalendermonat" nicht mit den neuen Labels überlappen sollte, allerdings ist hier vielleicht überflüssig. Der Grund, warum ich ihn da gelassen habe, ist, dass ich denke, dass man, wie auch in [der obigen Antwort](https://tex.stackexchange.com/a/155053/121799), den Anker auf `west` setzen sollte. append after command={ % % von https://tex.stackexchange.com/a/155053/121799 coordinate (x) at (axis direction cs:-\pgfkeysvalueof{/data point/x}+\pgfkeysvalueof{/pgfplots/xmin},0) node [anchor=west] at (x|-mynode-\coordindex) {\MonatName{\Monat} '\Jahr}} [![alt text][3]][3] weil das m.E. besser ausschaut. Egal wie, ich kann meine Antwort gerne nach Feedback anpassen. [1]: https://texwelt.de/wissen/upfiles/Screen_Shot_2018-04-08_at_6.15.52_PM.png [2]: https://texwelt.de/wissen/upfiles/Screen_Shot_2018-04-08_at_6.15.52_PM.png [3]: https://texwelt.de/wissen/upfiles/Screen_Shot_2018-04-08_at_6.23.46_PM.png
Klicke auf Einblenden/Ausblenden von Überarbeitungen 1

09 Apr '18, 03:44

Gel%C3%B6scht's gravatar image

Gelöscht
(ausgesetzt)