利用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中for循环下的索引变量的作用域
Apr 15 Python
介绍Python中的__future__模块
Apr 27 Python
python开发之list操作实例分析
Feb 22 Python
python 时间戳与格式化时间的转化实现代码
Mar 23 Python
Python实现的字典值比较功能示例
Jan 08 Python
python 巧用正则寻找字符串中的特定字符的位置方法
May 02 Python
python实现京东订单推送到测试环境,提供便利操作示例
Aug 09 Python
详解Django配置优化方法
Nov 18 Python
在flask中使用python-dotenv+flask-cli自定义命令(推荐)
Jan 05 Python
PyTorch加载自己的数据集实例详解
Mar 18 Python
Python偏函数Partial function使用方法实例详解
Jun 17 Python
python 实现Harris角点检测算法
Dec 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
php fsockopen中多线程问题的解决办法[翻译]
2011/11/09 PHP
php 操作调试的方法
2012/07/12 PHP
php排序算法(冒泡排序,快速排序)
2012/10/09 PHP
PHP实现163邮箱自动发送邮件
2016/03/29 PHP
深入讲解PHP的对象注入(Object Injection)
2017/03/01 PHP
用javascript操作xml
2006/11/04 Javascript
基于jquery的direction图片渐变动画效果
2010/05/24 Javascript
table行随鼠标移动变色示例
2014/05/07 Javascript
js的window.showModalDialog及window.open用法实例分析
2015/01/29 Javascript
常用的js验证和数据处理总结
2016/08/02 Javascript
JavaScript 中对象的深拷贝
2016/12/04 Javascript
js仿小米手机上下滑动效果
2017/02/05 Javascript
AngularJs每天学习之总体介绍
2017/08/07 Javascript
vscode中vue-cli项目es-lint的配置方法
2018/07/30 Javascript
[02:36]DOTA2英雄基础教程 斯拉克
2013/11/29 DOTA
Python3实现生成随机密码的方法
2014/08/23 Python
在Python中用keys()方法返回字典键的教程
2015/05/21 Python
python创建进程fork用法
2015/06/04 Python
详解Django框架中用context来解析模板的方法
2015/07/20 Python
Python入门_浅谈数据结构的4种基本类型
2017/05/16 Python
python如何实现一个刷网页小程序
2018/11/27 Python
详解从Django Rest Framework响应中删除空字段
2019/01/11 Python
Python SQLAlchemy入门教程(基本用法)
2019/11/11 Python
AmazeUI中模态框的实现
2020/08/19 HTML / CSS
Lookfantastic葡萄牙官方网站:欧洲第一大化妆品零售商
2018/03/17 全球购物
经典c++面试题三
2015/07/08 面试题
初级软件工程师面试题 Junior Software Engineer Interview
2015/02/15 面试题
中学教师管理制度
2014/01/14 职场文书
社区道德讲堂实施方案
2014/03/21 职场文书
爱国主义教育活动总结
2014/05/07 职场文书
2014年教师节寄语
2014/08/11 职场文书
党课培训心得体会
2014/09/02 职场文书
入党积极分子党小组意见
2015/06/02 职场文书
生活委员竞选稿
2015/11/21 职场文书
导游词之上海豫园
2019/10/24 职场文书
golang语言指针操作
2022/04/14 Golang