In matplotlib
, wenn ich eine log
-Skala auf einer Achse verwende, kann es vorkommen, dass diese Achse keine großen Ticks hat, nur kleinere . Das bedeutet, dass keine Labels für die gesamte Achse angezeigt werden.
Wie kann ich angeben, dass ich Etiketten auch für kleinere Ticks brauche?
Ich habe es versucht:
%Vor%... aber es hat den Trick nicht gemacht.
Ich habe viele Möglichkeiten ausprobiert, um kleinere Ticks in Log-Plots richtig zu arbeiten. Wenn es Ihnen gelingt, das Protokoll des Werts des Häkchens anzuzeigen, können Sie matplotlib.ticker.LogFormatterExponent
verwenden . Ich erinnere mich, matplotlib.ticker.LogFormatter
versucht zu haben, aber ich mochte es nicht sehr: wenn ich mich gut daran erinnere legt alles in base^exp
(auch 0,1, 0, 1). In beiden Fällen (sowie in allen anderen matplotlib.ticker.LogFormatter*
) müssen Sie labelOnlyBase=False
setzen, um kleinere Ticks zu erhalten.
Ich habe eine benutzerdefinierte Funktion erstellt und matplotlib.ticker.FuncFormatter
verwendet. Bei meinem Ansatz wird davon ausgegangen, dass die Ticks ganzzahlige Werte haben und dass Sie ein logisches Basis-10-Protokoll wünschen.
Wenn Sie die Hauptteilstriche nicht entfernen und subs = [2.0, 3.0, 6.0]
verwenden, ist die Schriftgröße der Haupt- und Nebenstriche unterschiedlich (dies kann durch Verwendung von text.usetex:False
in meinem matplotlibrc
verursacht werden) )
Tags und Links python matplotlib plot axis-labels