Ich habe folgende Grafik
und ich brauche ausgeschriebene Dezimalzahlen auf der Y-Achse sowie über den Balken. Ich habe hier einige andere Fragen gefunden, in denen empfohlen wurde, zu verwenden y tick label style={/pgf/number format/fixed}
, was bei mir überhaupt nichts bewirkt hat, und scaled ticks=false
, was für die Achse irgendwie funktioniert hat, aber auch einige seltsame Dinge verursacht hat und für die Balken nicht funktioniert hat.
Gibt es für mich eine zuverlässige Möglichkeit, die Zahlen (0,0051 und 0,018) auf der Achse UND den Knoten vollständig aufzuschreiben?
mwe:
\documentclass{article}
\usepackage[dvipsnames]{xcolor} %
\usepackage{pgfplots} %
\begin{document}
\begin{tikzpicture}
\pgfplotsset{width=9 cm, height=9cm}
\begin{axis} [
symbolic x coords={0, last year, this year},
xtick={last year, this year},
% scaled ticks=false,
axis lines*=left,
ymajorgrids = true, %shows the y grid
ymin=0,
% y tick label style={/pgf/number format/fixed},
bar width=12.5mm,
ybar=-1cm,
enlarge x limits={abs=2.33cm},
nodes near coords,
every node near coord/.append style={color=black},
]
\addplot [Red,fill=Red]
coordinates{ (last year,0.0051) (this year,0.018) } ;
\end{axis}
\end{tikzpicture}
\end{document}
Danke
Antwort1
Um das Zahlenformat für Achsen und Balken festzulegen, können wir verwenden
\pgfkeys{/pgf/number format/fixed,/pgf/number format/precision=4}
Der Code
\documentclass{article}
\usepackage[dvipsnames]{xcolor} %
\usepackage{pgfplots} %
\pgfplotsset{compat=1.18}%<-- added
\begin{document}
\begin{tikzpicture}
\pgfplotsset{width=9 cm, height=9cm}
\pgfkeys{
/pgf/number format/fixed,
/pgf/number format/precision=4,
}%<-- this line
\begin{axis} [
symbolic x coords={0, last year, this year},
xtick={last year, this year},
scaled ticks=false,
axis lines*=left,
ymajorgrids = true, %shows the y grid
ymin=0,
% y tick label style={/pgf/number format/fixed,/pgf/number format/precision=4},
bar width=12.5mm,
ybar=-1cm,
enlarge x limits={abs=2.33cm},
nodes near coords,
every node near coord/.append style={color=black},
]
\addplot [Red,fill=Red]
coordinates{ (last year,0.0051) (this year,0.018) } ;
\end{axis}
\end{tikzpicture}
\end{document}