Mehrere überlappende Plots mit unabhängiger Skalierung in Matplotlib

8

Ich habe derzeit einen Code, der matplotlib.pylab.plot mehrmals aufruft, um mehrere Datensätze auf demselben Bildschirm anzuzeigen, und Matplotlib skaliert alle unter Berücksichtigung aller Diagramme auf das globale Minimum und Maximum. Gibt es eine Möglichkeit, es zu verlangen, jede Parzelle unabhängig zu skalieren, bis zum Minimum und Maximum dieser Parzelle?

    
user3562 15.03.2009, 07:28
quelle

4 Antworten

3

Es gibt keine direkte Unterstützung dafür, aber hier ist ein Code aus einem Mailinglisteneintrag Das zeigt zwei unabhängige vertikale Achsen:

%Vor%     
Jouni K. Seppänen 15.03.2009, 12:14
quelle
0

So erstellen Sie ein einzelnes Diagramm (add_subplot (1,1,1)) und begrenzen die Skalierung auf den y-Achsen.

%Vor%     
dmorlock 20.07.2010 14:46
quelle
0

Ich brauche so etwas, aber ich wollte ein Beispiel erstellen, das Sie kopieren und in die interaktive Shell einfügen können, um es sich anzusehen. Hier ist es für diejenigen von Ihnen, die eine funktionierende Lösung benötigen:

%Vor%

Getestet und funktioniert in Python 2.7.6, numpy 1.8.1, Matpotlib 1.3.1. Ich werde weiter damit spielen und nach einer übersichtlichen Art suchen, mit überlagernden Datumsdiagrammen zu arbeiten. Ich werde meine Ergebnisse veröffentlichen.

    
radtek 10.06.2014 15:11
quelle
0

Hier ist eine Lösung mit Datumsdiagrammen, und ich denke, es ist die am besten optimierte Lösung mit twinx () eine kurze Hand zum Hinzufügen einer zweiten y-Achse.

%Vor%

Aus der Dokumentation, matplotlib.pyplot.twinx (axe = None) Machen Sie eine zweite Achse, die die x-Achse teilt. Die neuen Achsen überlagern ax (oder die aktuellen Achsen, wenn ax None ist). Die Ticks für ax2 werden rechts platziert und die ax2-Instanz wird zurückgegeben. Mehr hier .

    
radtek 11.06.2014 15:59
quelle

Tags und Links