python - matplotlib.mlab.bivariate_normal 的等效函数

标签 python matplotlib matplotlib.mlab

从 Matplotlib 3.1 开始,mlab.bivariate_normal 已从 matplotlib 的库中删除。我想知道是否有一个内置类在其他地方(或在 matplotlib 中)做同样的工作?我搜索了一下,但无法轻易找到它。

我意识到可以只复制函数 here并使用它,但我想知道是否有一个可以调用的内置函数。

最佳答案

正如@tmdavison 所建议的,scipy.stats.multivariate_normal() 可用于替换 matplotlib.mlab.bivariate_normal()

电话:

Z = matplotlib.mlab.bivariate_normal(X, Y, sig_x, sig_y, mu_x, mu_y, sig_xy)

变成:

rv = scipy.stats.multivariate_normal([mu_x, mu_y], [[sig_x, sig_xy], [sig_xy, sig_y]])
Z = rv.pdf(np.dstack((X, Y)))

matplotlib.mlab.bivariate_normal() 函数对除 XY 之外的所有参数都有默认值,因此您可能需要添加一些额外的值(value)。 sig_xsig_y 值默认为 1.0,所有其他参数默认为 0.0。因此,如果您要替换调用 bivariate_normal(X, Y),它将变为 multivariate_normal([0, 0], [[1, 0], [0, 1]]).pdf (np.dstack((X, Y))).

关于python - matplotlib.mlab.bivariate_normal 的等效函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63623170/

相关文章:

python - 使用比率绘制 RGB 颜色

python - 具有彩色高度的 Matplotlib 3D 瀑布图

python - 如何将字符串日期(YYYY-MM-DD)从 SQL 数据库转换为 python 中的 matplotlib 日期?

python - 从 slider 输入数据以更改标记颜色

python - 使用 pcolormesh 绘制更大的标记尺寸

python - Pandas 以 "seasonal"频率重新采样

python - Matplotlib。无法更改第二个 y 轴上的刻度

python - 我应该在 .gitignore 文件中添加 Django 迁移文件吗?

python - 如何告诉 lxml.etree.tostring(element) 不要在 python 中编写 namespace ?