Ändern, was die Enden der Whiskers in der Boxplot-Funktion von Matplotlib darstellen

8

Ich verstehe, dass die Enden der Whiskers in der Boxplot-Funktion von matplotlib auf den Maximalwert unter 75% + 1,5 IQR und den Minimalwert über 25% - 1,5 IQR hinausgehen. Ich möchte es ändern, um Max- und Minimum-Werte der Daten oder das 5. und 95. Quartil der Daten darzustellen. Ist das möglich?

    
JayKu12 24.02.2014, 20:07
quelle

2 Antworten

14

Um zu erreichen, dass die Whiskers am Min und Max der Daten erscheinen, setzen Sie den Parameter whis auf eine beliebig große Zahl. Mit anderen Worten: boxplots = ax.boxplot(myData, whis=np.inf) .

Der whis kwarg ist ein Skalierungsfaktor des Interquartilbereichs. Whisker werden von den Quartilen zu den äußersten Datenpunkten in whis * IQR gezogen.

Nun, da v1.4 aus ist:

In Matplotlib v1.4 können Sie sagen: boxplots = ax.boxplot(myData, whis=[5, 95]) , um die Whiskers auf das 5. und das 95. Perzentil zu setzen. Genauso können Sie boxplots = ax.boxplot(myData, whis='range') sagen, um die Whiskers auf min und max zu setzen.

Hinweis: Sie könnten wahrscheinlich die Künstler ändern, die im boxplots Wörterbuch enthalten sind, das von der ax.boxplot -Methode zurückgegeben wird, aber das scheint ein großer Aufwand zu sein.

    
Paul H 24.02.2014, 20:45
quelle
0

Setzen Sie die Boxplot-Option whisk = 0, um die eingebauten Whisker auszublenden. Erstellen Sie dann die benutzerdefinierten Whisker, die Daten von 5% bis 95% anzeigen.

%Vor%

Das sollte vertikale Linien mit Whiskermarkierungen hinter den Kästchen bei 5% bei 95% erzeugen.

    
user3582605 28.04.2014 18:57
quelle

Tags und Links