當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python SciPy FitResult.plot用法及代碼示例


本文簡要介紹 python 語言中 scipy.stats._result_classes.FitResult.plot 的用法。

用法:

FitResult.plot(ax=None, *, plot_type='hist')#

直觀地將數據與擬合分布進行比較。

僅當安裝了 matplotlib 時才可用。

參數

ax matplotlib.axes.Axes

用於繪製繪圖的 Axes 對象,否則使用當前 Axes。

plot_type {“hist”, “qq”, “pp”, “cdf”}

要繪製的繪圖類型。選項包括:

  • “hist”:將擬合分布的 PDF/PMF 疊加在數據的歸一化直方圖上。

  • “qq”:理論分位數與經驗分位數的散點圖。具體來說,x 坐標是在百分位數 (np.arange(1, n) - 0.5)/n 處評估的擬合分布 PPF 的值,其中 n 是數據點的數量,y 坐標是排序的數據點。

  • “pp”:理論百分位數與觀察到的百分位數的散點圖。具體來說,x 坐標是百分位數 (np.arange(1, n) - 0.5)/n ,其中 n 是數據點的數量,y 坐標是在排序數據點處評估的擬合分布 CDF 的值。

  • “cdf”:將擬合分布的 CDF 疊加到經驗 CDF 上。具體來說,經驗 CDF 的 x 坐標是排序的數據點,y 坐標是百分位數 (np.arange(1, n) - 0.5)/n ,其中 n 是數據點的數量。

返回

ax matplotlib.axes.Axes

繪製繪圖的 matplotlib Axes 對象。

例子

>>> 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

matplotlib.axes.Axes 對象可用於自定義繪圖。有關詳細信息,請參閱 matplotlib.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()
scipy-stats-_result_classes-FitResult-plot-1.png

相關用法


注:本文由純淨天空篩選整理自scipy.org大神的英文原創作品 scipy.stats._result_classes.FitResult.plot。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。