PGFPlots zeigen vollständige Dezimalzahlen auf Knoten und Ticks

PGFPlots zeigen vollständige Dezimalzahlen auf Knoten und Ticks

Ich habe folgende Grafik

Bildbeschreibung hier eingeben

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.

Bildbeschreibung hier eingeben

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}

Bildbeschreibung hier eingeben

verwandte Informationen