利用python绘制正态分布曲线


Posted in Python onJanuary 04, 2021

使用Python绘制正态分布曲线,借助matplotlib绘图工具;

利用python绘制正态分布曲线

#-*-coding:utf-8-*-
"""
python绘制标准正态分布曲线
"""
# ==============================================================
import numpy as np
import math
import matplotlib.pyplot as plt


def gd(x, mu=0, sigma=1):
  """根据公式,由自变量x计算因变量的值

  Argument:
    x: array
      输入数据(自变量)
    mu: float
      均值
    sigma: float
      方差
  """
  left = 1 / (np.sqrt(2 * math.pi) * np.sqrt(sigma))
  right = np.exp(-(x - mu)**2 / (2 * sigma))
  return left * right


if __name__ == '__main__':
  # 自变量
  x = np.arange(-4, 5, 0.1)
  # 因变量(不同均值或方差)
  y_1 = gd(x, 0, 0.2)
  y_2 = gd(x, 0, 1.0)
  y_3 = gd(x, 0, 5.0)
  y_4 = gd(x, -2, 0.5)

  # 绘图
  plt.plot(x, y_1, color='green')
  plt.plot(x, y_2, color='blue')
  plt.plot(x, y_3, color='yellow')
  plt.plot(x, y_4, color='red')
  # 设置坐标系
  plt.xlim(-5.0, 5.0)
  plt.ylim(-0.2, 1)

  ax = plt.gca()
  ax.spines['right'].set_color('none')
  ax.spines['top'].set_color('none')
  ax.xaxis.set_ticks_position('bottom')
  ax.spines['bottom'].set_position(('data', 0))
  ax.yaxis.set_ticks_position('left')
  ax.spines['left'].set_position(('data', 0))

  plt.legend(labels=['$\mu = 0, \sigma^2=0.2$', '$\mu = 0, \sigma^2=1.0$', '$\mu = 0, \sigma^2=5.0$', '$\mu = -2, \sigma^2=0.5$'])
  plt.show()

以上就是利用python绘制正态分布曲线的详细内容,更多关于python 正态分布的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python中的多线程实例教程
Aug 27 Python
python求众数问题实例
Sep 26 Python
用Python中的wxPython实现最基本的浏览器功能
Apr 14 Python
Python实现二维数组输出为图片
Apr 03 Python
Numpy数组的保存与读取方法
Apr 04 Python
详解Django+uwsgi+Nginx上线最佳实战
Mar 14 Python
利用Python实现kNN算法的代码
Aug 16 Python
Django 拆分model和view的实现方法
Aug 16 Python
python飞机大战 pygame游戏创建快速入门详解
Dec 17 Python
jupyter notebook tensorflow打印device信息实例
Apr 20 Python
python中sys模块的介绍与实例
Apr 17 Python
Python基础数据类型tuple元组的概念与用法
Aug 02 Python
Python 打印自己设计的字体的实例讲解
Jan 04 #Python
Python关于拓扑排序知识点讲解
Jan 04 #Python
Python经典五人分鱼实例讲解
Jan 04 #Python
Python约瑟夫生者死者小游戏实例讲解
Jan 04 #Python
python邮件中附加文字、html、图片、附件实现方法
Jan 04 #Python
python自动化发送邮件实例讲解
Jan 04 #Python
Python Selenium库的基本使用教程
Jan 04 #Python
You might like
php生成随机数的三种方法
2014/09/10 PHP
JavaScript 动态改变图片大小
2009/06/11 Javascript
JavaScript控制Session操作方法
2013/01/17 Javascript
用js将内容复制到剪贴板兼容浏览器
2014/03/18 Javascript
AngularJS表单编辑提交功能实例
2015/02/13 Javascript
js获取url传值的方法
2015/12/18 Javascript
JavaScript BASE64算法实现(完美解决中文乱码)
2017/01/10 Javascript
JavaScript编写一个贪吃蛇游戏
2017/03/09 Javascript
如何使用Bootstrap创建表单
2017/03/29 Javascript
将angular.js项目整合到.net mvc中的方法详解
2017/06/29 Javascript
Node.js学习教程之HTTP/2服务器推送【译】
2017/10/31 Javascript
前端必备插件之纯原生JS的瀑布流插件Macy.js
2017/11/22 Javascript
详解Vue CLI 3.0脚手架如何mock数据
2018/11/23 Javascript
初试vue-cli使用HBuilderx打包app的坑
2019/07/17 Javascript
layui动态表头的实现代码
2019/08/22 Javascript
JavaScript监听触摸事件代码实例
2019/12/30 Javascript
VUE中setTimeout和setInterval自动销毁案例
2020/09/07 Javascript
Python爬虫抓取手机APP的传输数据
2016/01/22 Python
详解Python里使用正则表达式的ASCII模式
2017/11/02 Python
python3实现磁盘空间监控
2018/06/21 Python
python matplotlib实现双Y轴的实例
2019/02/12 Python
详解Python读取yaml文件多层菜单
2019/03/23 Python
使用Python实现画一个中国地图
2019/11/23 Python
Flask 上传自定义头像的实例详解
2020/01/09 Python
Pytorch 计算误判率,计算准确率,计算召回率的例子
2020/01/18 Python
python实现暗通道去雾算法的示例
2020/09/27 Python
CSS3文本换行word-wrap解决英文文本超过固定宽度不换行
2013/10/10 HTML / CSS
x-ua-compatible content=”IE=7, IE=9″意思理解
2013/07/22 HTML / CSS
女子锻炼服装和瑜伽服装:Splits59
2019/03/04 全球购物
暑期教师培训方案
2014/06/07 职场文书
Java生成日期时间存入Mysql数据库的实现方法
2022/03/03 Java/Android
Django基础CBV装饰器和中间件
2022/03/22 Python
Win10 最新稳定版本 21H2开始推送
2022/04/19 数码科技
vue 自定义的组件绑定点击事件
2022/04/21 Vue.js
如何使用python包中的sched事件调度器
2022/04/30 Python
Python实现简单得递归下降Parser
2022/05/02 Python