解决可视化问题:module 'matplotlib.mlab' has no attribute 'normpdf'

今天在学习可视化绘制直方图,并添加拟合曲线时遇到了一个问题,即题目中所写module ‘matplotlib.mlab’ has no attribute ‘normpdf’

查阅相关资料之后发现是matplotlib.mlab移除了normpdf()的函数。可以使用scipy.stats.norm.pdf来解决这个问题

下面是代码展示
报错的代码

import numpy as np
import matplotlib.mlab as mlab            # 这个包中的函数可以添加随机变量分布的拟合曲线
import matplotlib.pyplot as plt
from scipy.stats import norm# 样本数据
mu = 100      # 分布期望
sigma = 15    # 分布标准差
x = mu + sigma * np.random.randn(1000)
num_bins = 20# 绘制数据分布
yhist, xhist, patches = plt.hist(x, num_bins, normed=1, facecolor='blue', alpha=0.5)# 添加拟合曲线
y = mlab.normpdf(xhist, mu, sigma)
plt.plot(xhist, y, "r--")
plt.xlabel("x")
plt.ylabel("Probability")
plt.title("Histogram of Normality: $\mu=100$, $\sigma=15$")
plt.show()

结果:

---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-22-3c515860b004> in <module>14 15 # 添加拟合曲线
---> 16 y = mlab.normpdf(xhist, mu, sigma)17 plt.plot(xhist, y, "r--")18 plt.xlabel("x")AttributeError: module 'matplotlib.mlab' has no attribute 'normpdf'

修改之后

import numpy as np
import matplotlib.mlab as mlab            # 这个包中的函数可以添加随机变量分布的拟合曲线
import matplotlib.pyplot as plt
from scipy.stats import norm# 样本数据
mu = 100      # 分布期望
sigma = 15    # 分布标准差
x = mu + sigma * np.random.randn(1000)
num_bins = 20# 绘制数据分布
yhist, xhist, patches = plt.hist(x, num_bins, normed=1, facecolor='blue', alpha=0.5)# 添加拟合曲线
y = norm.pdf(xhist, mu, sigma)
# y = mlab.normpdf(xhist, mu, sigma)
plt.plot(xhist, y, "r--")
plt.xlabel("x")
plt.ylabel("Probability")
plt.title("Histogram of Normality: $\mu=100$, $\sigma=15$")
plt.show()

输出结果:

参考资料
matplotlib.mlab.normpdf的文档
scipy.stats.norm.pdf的文档
讨论帖

大家如果有遇到相似问题,可以试试是否能够解决咯。

解决可视化问题:module 'matplotlib.mlab' has no attribute 'normpdf'----使用scipy中的函数代替相关推荐

  1. module 'matplotlib.mlab' has no attribute 'normpdf'错误解决办法

    module 'matplotlib.mlab' has no attribute 'normpdf'错误解决办法 #加入以下代码段 from scipy.stats import norm #更改代 ...

  2. 解决AttributeError: module ‘matplotlib.mlab‘ has no attribute ‘normpdf‘

    解决AttributeError: module 'matplotlib.mlab' has no attribute 'normpdf' 报错代码 y = mlab.normpdf(bins, mu ...

  3. module ‘matplotlib.mlab‘ has no attribute ‘normpdf‘

    问题: module'matplotlib.mlab'has no attribute 'normpdf' 原因: mlab中normpdf属性已经移除了,报错信息: module 'matplotl ...

  4. AttributeError: module 'matplotlib.mlab' has no attribute 'normpdf'

    AttributeError: module 'matplotlib.mlab' has no attribute 'normpdf' 在练习直方图时报错: Traceback (most recen ...

  5. module'matplotlib.mlab'has no attribute 'normpdf'

    采用mlab中的normpdf生成高斯曲线 但是发现mlab中这个属性已经移除了,报错信息: module 'matplotlib.mlab' has no attribute 'normpdf' 使 ...

  6. mxnet报错解决:AttributeError: module 'mxnet.context' has no attribute 'num_gpus'

    早上在跑mxnet的mnist的示例代码时报错了,代码如下: import mxnet as mx ctx = mx.gpu(0) if mx.context.num_gpus() > 0 el ...

  7. 成功解决利用matplotlib.pyplot进行绘图的时候整个画布中的绘制曲线只显示一部分

    成功解决利用matplotlib.pyplot进行绘图的时候整个画布中的绘制曲线只显示一部分 目录 解决问题 解决思路 解决方法 解决问题 利用matplotlib.pyplot进行绘图的时候整个画布 ...

  8. python时 module 'matplotlib' has no attribute 'figure'解决

    再用python编写代码时,可视化时我们会用到matplotlib这个包,在调用fig = plt.figure() 报错显示:AttributeError: module 'matplotlib' ...

  9. module 'matplotlib' has no attribute 'verbose'

    参考:https://stackoverflow.com/questions/49146678/module-matplotlib-has-no-attribute-verbose module 'm ...

最新文章

  1. Android 与 JS 的交互 以及 JS与Android 的交互
  2. 国际版Azure搭建Windows多种类型×××_三.配置SSTP ×××连接服务
  3. Effective C++ --1 让自己习惯C++
  4. k3 物料收发明细表sql_物料管理:班组长物料使用应知应会4件事
  5. Linux自启进程管理工具,进程管理工具Supervisor的安装及使用
  6. python可视化添加文本_python Matplotlib基础--如何添加文本和标注
  7. asp.net ajax1.0基础回顾(七):综合应用
  8. jQuary的相关动画效果
  9. Android 系统性能优化(58)---开机时间优化
  10. DOM JS实现动态表格
  11. Disney牵手联想发布AR头显,还有配备激光剑的AR游戏《星球大战》
  12. 如何用 Visual Studio 2017 开发 Arduino 应用程序
  13. Spring的@Transactional事务注意事项
  14. 在linux配置端口映射,Linux 配置端口映射
  15. 【蓝牙学习笔记】Arduino设置蓝牙模块HC-06 CC2540 CC2541自动初始化
  16. APICloud开源O2O商城源码
  17. MAC下配置MAVEN环境变量配置
  18. Installation for COMSOl(安装COMSOL)
  19. 面试手写代码的经验分享
  20. NOIP2016普及组复赛全国一等奖名单及排名(续表_919~1419名)

热门文章

  1. 基于 QGIS 的气象数据可视化(一)
  2. list和tuple共同点和区别
  3. Linux上的多系统管理工具--LXD
  4. 2011-10-13---?日记
  5. 9,NAT映射协议概述
  6. i5 11400h和i5 12500h差距大不大
  7. word中添加java代码怎么写_Java如何在word文档中写一个段落?
  8. 2020年之前的往事……
  9. CentOS7.9安装
  10. 采用netty开发智能手表tcp服务端还是非常不错的