PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Balkendiagramme



martinli
20-11-2012, 14:04
Moin,
Ich noch mal...

Ich habe ein paar Balkendiagrame in meinem Dokument. Die werden zwar ordnungsgemäß angezeigt, sehen aber leider nicht sonderlich schön aus.
Teilweise werden Werte in % angegeben, die Y ache geht aber über 100 hinaus:


\begin{figure}[H]
\centering
\begin{tikzpicture}
\begin{axis}[
width=300pt,
height=250pt,
axis lines*=left, ymin=0, ymax=,% Don't display the top and right lines
ybar, % Display it as a bargraph
bar width=20pt,
enlarge y limits={upper,value=1},
nodes near coords,
every node near coord/.append style={ anchor=mid west, rotate=90},
symbolic x coords={XXX,YYY},
xtick=data,
xticklabel style={ inner sep=0pt, anchor=north east, rotate=70 },
nodes near coords align={vertical},
yticklabel style={/pgf/number format/fixed},]
\addplot coordinates {(XXX,72)(YYY,48)};
\addplot coordinates {(XXX,72)(YYY,48)};
\legend{C,NC}
\end{axis}
\end{tikzpicture}
\caption{Caption}
\label{fig:CFigure}
\end{figure}

In diesem Fall wo zwei doppelbalken angezeigt werden, sind beide doppelbalken auch jeweils nach ganz Rechts oder Links an den Rand gerückt.
Irgendwie schaffe ich es da nicht, die Einstellungen richtig zu wählen.
Vielleicht kann noch mal jemand helfen?
Vielen Dank
Martin

hakaze
20-11-2012, 15:05
Ich denke, das Problem liegt bei den symbolischen X-Koordinaten, die nicht richtig skaliert werden (können). Ich habe das umgangen, indem ich einfach Zahlenwerte (1 und 2) eingesetzt und diese dann mit den entsprechenden Labels (XXX und YYY) versehen habe. Dann lässt sich auch die Skalierung der x-Achse mit xmin und xmax steuern.

Bei der y-Achse sorgte das "enlarge limits" dafür, dass du eine um 100% längere Achse bekommst. Also habe ich es rausgenommen und ymax fest auf 100 gesetzt:


\documentclass[]{standalone}

\usepackage{pgfplots}
\pgfplotsset{compat=1.7}

\begin{document}
\begin{tikzpicture}
\begin{axis}[
width=300pt,
height=250pt,
axis lines*=left, ymin=0, ymax=100,% Don't display the top and right lines
ybar, % Display it as a bargraph
bar width=40pt, % ein bisschen breiter
%enlarge y limits={upper,value=1}, % raus
nodes near coords,
every node near coord/.append style={ anchor=mid west, rotate=90},
%symbolic x coords={XXX,YYY},
xtick={1,2}, xmin=0.5, xmax=2.5, xticklabels={XXX,YYY},
xticklabel style={ inner sep=0pt, anchor=north east, rotate=70 },
nodes near coords align={vertical},
yticklabel style={/pgf/number format/fixed},]
\addplot coordinates {(1,72) (2,48)};
\addplot coordinates {(1,64) (2,32)};
\legend{C,NC}
\end{axis}
\end{tikzpicture}
\end{document}

martinli
22-11-2012, 08:05
Soo,
ich hab das mal alles geändert und teils die Werte noch ein wenig angepasst und jetzt schauts echt gut aus.
Vielen Dank!
Martin