Histogramm Layout korrigieren?

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: Histogramm Layout korrigieren?

Re: Histogramm Layout korrigieren?

von Bartman » Sa 31. Dez 2022, 01:35

Ein Vorschlag zu Deinem ersten Beispiel:
\documentclass{standalone}
\usepackage{pgfplots}

\pgfplotsset{
  compat=1.18,
  /pgf/number format/.cd,
    use comma,
    1000 sep={\,},
    min exponent for 1000 sep=4
}

\begin{document}
\centering
\begin{tikzpicture}
  \begin{axis}[
    width=8cm,
    height=\pgfkeysvalueof{/pgfplots/width}/2,
    xbar,
    bar shift=0pt,
    xmin=0,
    tick style={draw=none},
    y axis line style={draw=none},
    ytick={1,2,3,4},
    yticklabels={Spanender Verschleis,Reaktionsprodukte,Ermüdungsverschleis,Gleitverschleis},
    xticklabels={\empty},
    xlabel={Konzentration in Partikel / ml},
    nodes near coords
  ]
  \addplot coordinates {(5221,4)};
  \addplot coordinates {(918,3)};
  \addplot coordinates {(317,2)};
  \addplot coordinates {(1376,1)};
  \end{axis}
\end{tikzpicture}
\end{document}
Das Tausendertrennzeichen wird aufgrund der Einstellungen in der Präambel erst ab einer fünfstelligen Zahl ausgegeben. Wie man an pgf erkennen kann, ist die Beschreibung in der Anleitung von TikZ zu finden.

Re: Histogramm Layout korrigieren?

von Stefan Kottwitz » Fr 30. Dez 2022, 21:44

Hallo Neo,

danke für das Zeigen der gefundenen Lösung!

Stefan

Re: Histogramm Layout korrigieren?

von Neo » Fr 30. Dez 2022, 17:23

Habe nun eine andere Vorlage verwendet. Das Ergebnis stellt mich zufrieden. Der Vollständigkeit halber liefere ich das Ergebnis hier ab.
\documentclass{standalone}
\usepackage{pgfplots}
\begin{document}
 \begin{tikzpicture}
    \begin{axis}[
    title style={at={(0,1)},anchor=south west,inner xsep=0pt},% <- added
    ybar=15,            %Abstand zwischen den Balken
    ymin=0,
    ymax=6000,            %maximale Diagrammhöhe
    xmin=-1,% <-changed
    xmax=1,% <- changed
    ymajorgrids,       %Horizontale Guidelines
    bar width=30pt,     %Balkenbreite
    xtick=\empty,       %keine kleinen Striche auf x achse
     ytick={0,1000,...,6000},
    nodes near coords={\pgfmathprintnumber\pgfplotspointmeta },           %Fügt Prozent an, wenn \% am Ende
    nodes near coords align={vertical},
    legend style={
        legend pos = outer north east,
        row sep = 10pt,
        draw = none,
        /tikz/nodes={text width=135pt,text depth=}
    }]
    \addplot coordinates{(0,5221)};
    \addlegendentry{Gleitverschleiß}

    \addplot coordinates{ (0,918)};
    \addlegendentry{Ermüdungsverschleiß}

    \addplot coordinates{ (0,317)};
    \addlegendentry{Reaktionsprodukte}

    \addplot coordinates{ (0,1376)};
    \addlegendentry{Spanender Verschleiß}

    \end{axis}
    \end{tikzpicture}
\end{document}

Histogramm Layout korrigieren?

von Neo » Fr 30. Dez 2022, 15:55

Hallo,
warum baut Latex hier unerwünschte vertikale Abstände zwischen den Balken und der Beschriftung ein? Außerdem wäre es schöner, wenn die Dezimaltrennung ein Punkt statt Komma wäre. Weiß da jemand eine Lösung?
\documentclass{standalone}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
  \begin{axis}[title  = Konzentration in Partikel / ml,
    xbar,
    y axis line style = { opacity = 0 },
    axis x line       = none,
    tickwidth         = 0pt,
 %   enlarge y limits  = 0.2,
 %enlarge x limits  = 0.02,
    symbolic y coords = {Spanender Verschleis, Reaktionsprodukte,Ermüdungsverschleis,  Gleitverschleis},
    nodes near coords,
  ]
  \addplot coordinates { (,Spanender Verschleis) (,Reaktionsprodukte) (,Ermüdungsverschleis)  (5221,Gleitverschleis) };
  \addplot coordinates { (,Spanender Verschleis) (,Reaktionsprodukte) (918,Ermüdungsverschleis)  (,Gleitverschleis)  };
    \addplot coordinates { (,Spanender Verschleis) (317,Reaktionsprodukte) (,Ermüdungsverschleis)  (,Gleitverschleis) };
  \addplot coordinates { (1376,Spanender Verschleis) (,Reaktionsprodukte) (,Ermüdungsverschleis)  (,Gleitverschleis)  };
 % \legend{Gleitverschleiß, Ermüdungsverschleiß, Reaktionsprodukte, Spanender Verschleiß}
  \end{axis}
\end{tikzpicture}
\end{document}

Nach oben