利用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 30 Python
使用70行Python代码实现一个递归下降解析器的教程
Apr 17 Python
Python修改MP3文件的方法
Jun 15 Python
python实现二维码扫码自动登录淘宝
Dec 27 Python
今天 平安夜 Python 送你一顶圣诞帽 @微信官方
Dec 25 Python
Python中的defaultdict与__missing__()使用介绍
Feb 03 Python
python实现扫描ip地址的小程序
Apr 16 Python
TensorFlow内存管理bfc算法实例
Feb 03 Python
Python如何将装饰器定义为类
Jul 30 Python
python中pyplot基础图标函数整理
Nov 10 Python
python入门学习关于for else的特殊特性讲解
Nov 20 Python
Python 文字识别
May 11 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
可快速识别放射性物质-国外大神教你diy一个开放式辐射探测器
2020/03/12 无线电
曾在DC漫画界反派角色扮演的演员,谁才是你心目中的小丑之王?
2020/04/09 欧美动漫
PHP自定义大小验证码的方法详解
2013/06/07 PHP
thinkphp四种url访问方式详解
2014/11/28 PHP
Jquery ui css framework
2010/06/28 Javascript
jquery判断RadioButtonList和RadioButton中是否有选中项示例
2013/09/29 Javascript
js opener的使用详解
2014/01/11 Javascript
Node.js安装教程和NPM包管理器使用详解
2014/08/16 Javascript
使用node.js 获取客户端信息代码分享
2014/11/26 Javascript
手机开发必备技巧:javascript及CSS功能代码分享
2015/05/25 Javascript
JS日期格式化之javascript Date format
2015/10/01 Javascript
js针对ip地址、子网掩码、网关的逻辑性判断
2016/01/06 Javascript
浅谈javascript中关于日期和时间的基础知识
2016/07/13 Javascript
利用Node.js编写跨平台的spawn语句详解
2017/02/12 Javascript
浅谈JS中的反柯里化( uncurrying)
2017/08/17 Javascript
tangram.js库实现js类的方式实例分析
2018/01/06 Javascript
使用vue打包时vendor文件过大或者是app.js文件很大的问题
2018/06/29 Javascript
详解webpack之图片引入-增强的file-loader:url-loader
2018/10/08 Javascript
vue 扩展现有组件的操作
2020/08/14 Javascript
关于angular引入ng-zorro的问题浅析
2020/09/09 Javascript
如何在vue 中使用柱状图 并自修改配置
2021/01/21 Vue.js
[04:50]DOTA2亚洲邀请赛小组赛第四日 TOP10精彩集锦
2015/02/02 DOTA
用Python中的__slots__缓存资源以节省内存开销的方法
2015/04/02 Python
pycharm+django创建一个搜索网页实例代码
2018/01/24 Python
详解python 利用echarts画地图(热力图)(世界地图,省市地图,区县地图)
2019/08/06 Python
Python数据可视化:泊松分布详解
2019/12/07 Python
Python + selenium + crontab实现每日定时自动打卡功能
2020/03/31 Python
html5使用canvas绘制太阳系效果
2014/12/15 HTML / CSS
小米俄罗斯授权商店:Xiaomi俄罗斯
2019/12/08 全球购物
美国折扣地毯销售网站:Rugs.com
2020/03/27 全球购物
高一自我鉴定
2013/12/17 职场文书
生产部管理制度
2014/01/31 职场文书
挂职自我鉴定
2014/02/26 职场文书
销售口号大全
2014/06/11 职场文书
乡镇安全生产目标责任书
2014/07/23 职场文书
Python Pandas 删除列操作
2022/03/16 Python