Python如何绘制概率分布直方图浅析

前言

直方图是一个可以快速展示数据概率分布的工具,直观易于理解,并深受数据爱好者的喜爱。大家平时可能见到最多就是 matplotlib,seaborn 等高级封装的库包,类似以下这样的绘图。

一、代码

1、案例一

import random
import numpy as np
import matplotlib.pyplot as plt

X = np.random.normal(loc=10, scale=2, size=(1, 1000))[0]

Y = np.random.normal(loc=10, scale=1.0, size=(1, 1000))[0]

P = np.ones(1000)
P[:600] = 0
np.random.shuffle(P)
# print(P)

Z = X + Y * P

plt.hist(Z, density=True, bins=150)
plt.show()

2、案例二

import random
import numpy as np
import matplotlib.pyplot as plt

n = 1000
# p = 0.4
U = []

for i in range(1000):


    X = np.random.normal(loc=10, scale=2, size=(1, n))[0]

    Y = np.random.normal(loc=10, scale=1.0, size=(1, n))[0]

    P = np.ones(n)
    P[:600] = 0
    np.random.shuffle(P)

    Z = X + Y * P

    a = 1 / pow(n * np.var(Z), 1/2)

    b = sum(Z) - n * np.mean(Z)

    u = a * b

    U.append(u)

plt.hist(U, density=True, bins=60)
plt.show()

二、运行效果

1、案例一

2、案例二

总结

到此这篇关于Python如何绘制概率分布直方图的文章就介绍到这了,更多相关Python绘制概率分布直方图内容请搜索云海天教程以前的文章或继续浏览下面的相关文章希望大家以后多多支持云海天教程!