📜  如何在Python中使用 Matplotlib 绘制正态分布?

📅  最后修改于: 2022-05-13 01:54:36.323000             🧑  作者: Mango

如何在Python中使用 Matplotlib 绘制正态分布?

先决条件:

  • Matplotlib
  • 麻木
  • 西比
  • 统计数据

正态分布是统计学中使用的概率函数,用于说明数据值的分布方式。它是统计学中最重要的概率分布函数,因为它在真实案例场景中具有优势。例如,人口的身高、鞋码、智商水平、掷骰子等等。

正态分布或高斯分布的概率密度函数由下式给出:

概率密度函数

其中,x 为变量,mu 为均值,sigma 标准差

需要的模块

  • Matplotlib是 python 的数据可视化库,广泛用于数据可视化。
  • Numpy是一个通用的数组处理包。它提供了一个高性能的多维数组对象,以及用于处理这些数组的工具。它是使用Python进行科学计算的基本包。
  • Scipy是一个Python库,可用于解决许多数学方程和算法。
  • Statistics模块提供计算数值数据的数理统计的函数。

使用的功能

  • 计算数据的平均值

句法:

mean(data)
  • 计算数据的标准偏差

句法:

stdev(data)
  • 计算数据的正态概率密度使用norm.pdf,它指的是正态概率密度函数,它是scipy库中的一个模块,它使用上述概率密度函数来计算值。

句法:

在这里,loc 参数也称为均值,尺度参数也称为标准差。

方法

  • 导入模块
  • 创建数据
  • 计算平均值和偏差
  • 计算正态概率密度
  • 使用上述计算值绘图
  • 显示图

下面是实现。

Python3
import numpy as np
import matplotlib.pyplot as plt
from scipy.stats import norm
import statistics
  
# Plot between -10 and 10 with .001 steps.
x_axis = np.arange(-20, 20, 0.01)
  
# Calculating mean and standard deviation
mean = statistics.mean(x_axis)
sd = statistics.stdev(x_axis)
  
plt.plot(x_axis, norm.pdf(x_axis, mean, sd))
plt.show()


输出:

上面代码的输出