2016-03-22 7 views
-3

Hallo Ich möchte das folgende Grundstück mit Matplotlib und Pandas neu erstellen. Ich begann Boxplot zu benutzen, aber ich habe Mühe, die Kwargs zu manipulieren. Gibt es eine einfache Möglichkeit, Boxplot zu verwenden, oder muss ich das Diagramm vollständig neu erstellen? Ein Problem, das ich hatte, war auch die aktuellen Daten hinzufügen? Mit freundlichen GrüßenErstellen eines Diagramms mit High/Low und Perzentil-Box plus andere Punkte

Correlation Plot

+2

Vielleicht könnten Sie ein minimales Beispiel für fehlerhaften Code hinzufügen und angeben, was schief läuft. Im Allgemeinen gibt es viele Möglichkeiten, einen Boxplot zu erstellen (zB https://stanford.edu/~mwaskom/software/seaborn/generated/seaborn.boxplot.html, http://matplotlib.org/examples/pylab_examples/boxplot_demo. html), die allesamt perfekt in der Lage sind, Ihr Beispiel nachzubilden. – egpbos

Antwort

1

Die boxplot von matplotlib hat einige Einschränkungen in der Tat. Für Sie die volle Kontrolle darüber haben, wie die Handlung aussieht würde ich mit Patches beraten Rectangles zum Beispiel (Code von Rectangles Link) zeichnen:

import matplotlib.pyplot as plt 
import matplotlib.patches as patches 

fig1 = plt.figure() 
ax1 = fig1.add_subplot(111, aspect='equal') 
ax1.add_patch(
    patches.Rectangle(
     (0.1, 0.1), # (x,y) 
     0.5,   # width 
     0.5,   # height 
    ) 
) 
fig1.savefig('rect1.png', dpi=90, bbox_inches='tight') 

Dies ist nützlich, weil Sie nur dieses und einen normalen plot Befehl benötigen (für Linien) in Matplotlib um einen Boxplot zu machen. Dies gibt Ihnen immense Kontrolle über Farbe und Form und es ist ziemlich einfach zu bauen. Sie haben auch Text, den Sie benötigen, für den Sie Matplotlib verwenden können. Das letzte Ding sind jene Markierungen, die mit einer scatter sehr machbar sind.

Ein Boxplot ist eine Form, die Informationen wie Minimum, Maximum und Perzentil (25,50,75) angibt. Sie können dies sehr einfach mit numpy percentile berechnen.

Die Details des Plots (Beschriftungen am unteren Rand, Legende, Titel im Feld usw.) können ebenfalls erreicht werden, aber an Beschriftungen basteln, manuell eine Titelbox erstellen und so weiter.

Es wird Ihnen etwas Arbeit geben, aber das sind die Befehle, die Sie brauchen.

+0

vielen Dank, dass ich glaube, was ich brauche. Entschuldigung, aber es war ein wenig durcheinander zu finden und zu versuchen mit dem Boxplot zu spielen war die falsche Taktik. Ich werde damit spielen. –