Hey, ich bin möchte ein Balkendiagramm mit Tikz erstellen und habe mich dabei an diesem Beispiel orientiert http://www.texample.net/tikz/examples/bar-chart. Jetzt möchte ich aber das nur zwei Kategorien da sind, also z.B. Latex & Tools. Meinen Code habe ich dementsprechend geändert:

Öffne in Overleaf
  \begin{tikzpicture}
  \begin{axis}[title  = Contributions per category
                          at LaTeX-Community.org,
    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 = {LaTeX, Tools},
    nodes near coords,
  ]
  \addplot coordinates { (57727,LaTeX)(5672,Tools)};
  \addplot coordinates { (14320,LaTeX)(1615,Tools)};
  \legend{Topics, Posts}
  \end{axis}
\end{tikzpicture}

Problem ist jedoch, dass das ganze jetzt so aussieht alt text

Könnt ihr mir sagen was ich falsch mache? Hab ich da irgendeinen Denkfehler? Ich bin Latex Anfänger.

Danke euch!!

gefragt 09 Okt, 05:05

rootrocker's gravatar image

rootrocker
211
Akzeptiert: 0%


Du machst es schon richtig! Das Beispiel auf TeXample.net funktioniert, doch für weniger Markierungen auf der y-Achse müsste man es anpassen. Sonst hat man mehr als zwei y-Markierungen per Voreinstellung, jedoch nur zwei Beschriftungen. Damit wiederholen sie sich.

Abhilfe schafft die Option ytick = data.

Weiterhin kann es sinnvoll sein, den Plot mit width und height (und enlarge limits) noch zu skalieren, sonst sind die Balken vielleicht zu weit auseinander. Hier ein Komplettbeispiel:

Öffne in Overleaf
\documentclass[border=10pt]{standalone} 
\usepackage{pgfplots}
\begin{document}
  \begin{tikzpicture}
  \begin{axis}[title  = Contributions per category
                          at LaTeX-Community.org,
    xbar,
    y axis line style = { opacity = 0 },
    axis x line       = none,
    tickwidth         = 0pt,
    enlarge y limits  = 0.5,
    enlarge x limits  = 0.02,
    ytick             = data,
    height            = 4cm,
    width             = 6cm,
    symbolic y coords = {LaTeX, Tools},
    nodes near coords,
  ]
  \addplot coordinates { (57727,LaTeX)(5672,Tools)};
  \addplot coordinates { (14320,LaTeX)(1615,Tools)};
  \legend{Topics, Posts}
  \end{axis}
\end{tikzpicture}
\end{document}

Balkengrafik

Permanenter link

beantwortet 09 Okt, 05:34

stefan's gravatar image

stefan ♦♦
6.0k12236

bearbeitet 09 Okt, 05:36

Deine Antwort auf die Frage (nicht auf andere Antworten)
Knebel-Vorschau

Folge dieser Frage

Per E-Mail:

Wenn Du Dich anmeldest, kannst Du Updates hier abonnieren

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs füge einfach zwei Leerzeichen an die Stelle ein, an der die neue Zeile sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Zugeordnete Themen:

×540
×5

Frage gestellt: 09 Okt, 05:05

Frage wurde angeschaut: 417 Mal

Zuletzt aktualisiert: 09 Okt, 05:36