von Seban » Mi 3. Jul 2019, 18:24
Hallo,
Ich habe mit pgfplots ein Balkendiagramm erstellt, das mittels einer csv-Datei mit Daten befüllt wird. Bisher lief es problemlos, aber nun ist es vorgekommen, dass die darzustellenden Daten sehr klein sind (y-Werte alle kleiner 0,02). Dies führt zu Fehlern, ich schätze es hat damit zu tun, dass die Skalierung der y-Achse nicht mehr korrekt erfolgen kann. Leider finde ich aber keinen Weg, wie ich das beheben kann.
Hier ein Minimalbeispiel, wäre nett wenn jemand mal drüber schauen könnte.
\documentclass{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[scaled]{uarial}
\renewcommand*\familydefault{\sfdefault}
\usepackage[T1]{fontenc}
\usepackage[ansinew]{inputenc}
\usepackage{pgfplots}
\pgfplotsset{
compat=1.16, % Kompatibilität einstellen
ticklabel style={/pgf/number format/.cd, % Tick-Label anpassen:
use comma, % Komma als Dezimaltrennzeichen
assume math mode % Verhindert Wechsel in Mathemodus (Tick-Labels in Standardschriftart)
}
}
\begin{document}
\begin{figure}
\centering
\begin{tikzpicture}
\begin{axis}[
ybar, % lädt vordefiniertes Layout für Balkendiagramme
width=0.9\textwidth, height=0.33\textheight, % Breite, Höhe der Abbildung
enlarge x limits=0.02, % Abstand links und rechts der Balken
xlabel={x-Achsen-Beschriftung}, % x-Achsen-Beschriftung
ylabel={y-Achsen-Beschriftung}, % y-Achsen-Beschriftung
xtick={5,10,...,50}, % x-Achsen-Werte
xtick pos=left, % x-Achse hat nur unten Ticks
ymin=0, % kein Abstand zw. Balken und x-Achse
ymajorgrids=true, % horizontale Linien an Ticks der y-Achse einfügen
ticklabel style={/pgf/number format/.cd, fixed},% Tick-Label anpassen: Keine Skalierung (fixed)
]
\addplot+ [ % Plot hinzufügen
ybar, % Diagrammtyp: vertikales Balkendiagramm
bar width=4pt % Breite der Balken
] table { % Daten einlesen
2 0.09 % funktioniert nicht -> Fehler
3 0.01
4 0.01
5 0.01
6 0.03
7 0.01
50 0.02
% 2 0.091 % funktioniert nun
% 3 0.01
% 4 0.01
% 5 0.01
% 6 0.03
% 7 0.01
% 50 0.02
};
\end{axis}
\end{tikzpicture}
\caption[]{Bildunterschrift}
\label{fig:bsp}
\end{figure}
\end{document}
Beste Grüße,
Seban
Hallo,
Ich habe mit pgfplots ein Balkendiagramm erstellt, das mittels einer csv-Datei mit Daten befüllt wird. Bisher lief es problemlos, aber nun ist es vorgekommen, dass die darzustellenden Daten sehr klein sind (y-Werte alle kleiner 0,02). Dies führt zu Fehlern, ich schätze es hat damit zu tun, dass die Skalierung der y-Achse nicht mehr korrekt erfolgen kann. Leider finde ich aber keinen Weg, wie ich das beheben kann.
Hier ein Minimalbeispiel, wäre nett wenn jemand mal drüber schauen könnte.
[code]
\documentclass{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[scaled]{uarial}
\renewcommand*\familydefault{\sfdefault}
\usepackage[T1]{fontenc}
\usepackage[ansinew]{inputenc}
\usepackage{pgfplots}
\pgfplotsset{
compat=1.16, % Kompatibilität einstellen
ticklabel style={/pgf/number format/.cd, % Tick-Label anpassen:
use comma, % Komma als Dezimaltrennzeichen
assume math mode % Verhindert Wechsel in Mathemodus (Tick-Labels in Standardschriftart)
}
}
\begin{document}
\begin{figure}
\centering
\begin{tikzpicture}
\begin{axis}[
ybar, % lädt vordefiniertes Layout für Balkendiagramme
width=0.9\textwidth, height=0.33\textheight, % Breite, Höhe der Abbildung
enlarge x limits=0.02, % Abstand links und rechts der Balken
xlabel={x-Achsen-Beschriftung}, % x-Achsen-Beschriftung
ylabel={y-Achsen-Beschriftung}, % y-Achsen-Beschriftung
xtick={5,10,...,50}, % x-Achsen-Werte
xtick pos=left, % x-Achse hat nur unten Ticks
ymin=0, % kein Abstand zw. Balken und x-Achse
ymajorgrids=true, % horizontale Linien an Ticks der y-Achse einfügen
ticklabel style={/pgf/number format/.cd, fixed},% Tick-Label anpassen: Keine Skalierung (fixed)
]
\addplot+ [ % Plot hinzufügen
ybar, % Diagrammtyp: vertikales Balkendiagramm
bar width=4pt % Breite der Balken
] table { % Daten einlesen
2 0.09 % funktioniert nicht -> Fehler
3 0.01
4 0.01
5 0.01
6 0.03
7 0.01
50 0.02
% 2 0.091 % funktioniert nun
% 3 0.01
% 4 0.01
% 5 0.01
% 6 0.03
% 7 0.01
% 50 0.02
};
\end{axis}
\end{tikzpicture}
\caption[]{Bildunterschrift}
\label{fig:bsp}
\end{figure}
\end{document}
[/code]
Beste Grüße,
Seban