Frage

Es ist eine nette Funktion, zieht zurück Histogramme zurück Matlab . Ich brauche ein ähnliches Diagramm in matplotlib zu erstellen. Kann du jemand zeigt ein Arbeitscodebeispiel?

War es hilfreich?

Lösung

Durch die Verbindung von Mark Rushakoff hingewiesen, finden Sie, was ich schließlich tat

import numpy as np
from matplotlib import pylab as pl

dataOne = get_data_one()
dataTwo = get_data_two()

hN = pl.hist(dataTwo, orientation='horizontal', normed=0, rwidth=0.8, label='ONE')
hS = pl.hist(dataOne, bins=hN[1], orientation='horizontal', normed=0, 
    rwidth=0.8, label='TWO')

for p in hS[2]:
    p.set_width( - p.get_width())

xmin = min([ min(w.get_width() for w in hS[2]), 
                min([w.get_width() for w in hN[2]]) ])
xmin = np.floor(xmin)
xmax = max([ max(w.get_width() for w in hS[2]), 
                max([w.get_width() for w in hN[2]]) ])
xmax = np.ceil(xmax)
range = xmax - xmin
delta = 0.0 * range
pl.xlim([xmin - delta, xmax + delta])
xt = pl.xticks()
n = xt[0]
s = ['%.1f'%abs(i) for i in n]
pl.xticks(n, s)
pl.legend(loc='best')
pl.axvline(0.0)
pl.show()

Andere Tipps

Die matplotlib Benutzer Mailing-Post hat einigen Beispielcode für ein bihistogram das geht nach oben und unten statt nach links und rechts. Hier ist das Beispiel für die Ausgabe er verknüpft.

Wenn up-down absolut nicht für Sie arbeiten, sollte es nur ein paar Minuten dauern die Operationen auf der y-Achse mit der x-Achse Operationen zu tauschen.

Auch ist Ihr Link nicht eine MATLAB-Funktion, es ist ein tatsächliches Skript, dass jemand in etwa 40 Zeilen schrieb. Man könnte tatsächlich am Skript Quelle schauen und versuchen, es zu portieren, da MATLAB und matplotlib ziemlich nahe Syntax haben.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top