plot#
- FitResult.plot(ax=None, *, plot_type='hist')[Quelle]#
Vergleichen Sie die Daten visuell mit der angepassten Verteilung.
Nur verfügbar, wenn
matplotlibinstalliert ist.- Parameter:
- ax
matplotlib.axes.Axes Achsenobjekt, auf das der Plot gezeichnet werden soll, andernfalls werden die aktuellen Achsen verwendet.
- plot_type{„hist“, „qq“, „pp“, „cdf“}
Art des zu zeichnenden Plots. Optionen umfassen
„hist“: Überlagert die PDF/PMF der angepassten Verteilung über einem normalisierten Histogramm der Daten.
„qq“: Streudiagramm von theoretischen Quantilen gegen die empirischen Quantile. Genauer gesagt sind die x-Koordinaten die Werte der angepassten Verteilung PPF, ausgewertet an den Perzentilen
(np.arange(1, n) - 0.5)/n, wobeindie Anzahl der Datenpunkte ist, und die y-Koordinaten sind die sortierten Datenpunkte.„pp“: Streudiagramm von theoretischen Perzentilen gegen die beobachteten Perzentilen. Genauer gesagt sind die x-Koordinaten die Perzentilen
(np.arange(1, n) - 0.5)/n, wobeindie Anzahl der Datenpunkte ist, und die y-Koordinaten sind die Werte der angepassten Verteilung CDF, ausgewertet an den sortierten Datenpunkten.„cdf“: Überlagert die CDF der angepassten Verteilung über der empirischen CDF. Genauer gesagt sind die x-Koordinaten der empirischen CDF die sortierten Datenpunkte, und die y-Koordinaten sind die Perzentilen
(np.arange(1, n) - 0.5)/n, wobeindie Anzahl der Datenpunkte ist.
- ax
- Rückgabe:
- ax
matplotlib.axes.Axes Das matplotlib Axes-Objekt, auf dem der Plot gezeichnet wurde.
- ax
Beispiele
>>> import numpy as np >>> from scipy import stats >>> import matplotlib.pyplot as plt # matplotlib must be installed >>> rng = np.random.default_rng() >>> data = stats.nbinom(5, 0.5).rvs(size=1000, random_state=rng) >>> bounds = [(0, 30), (0, 1)] >>> res = stats.fit(stats.nbinom, data, bounds) >>> ax = res.plot() # save matplotlib Axes object
Das
matplotlib.axes.Axes-Objekt kann zur Anpassung des Plots verwendet werden. Einzelheiten finden Sie in der Dokumentation zumatplotlib.axes.Axes.>>> ax.set_xlabel('number of trials') # customize axis label >>> ax.get_children()[0].set_linewidth(5) # customize line widths >>> ax.legend() >>> plt.show()