曲线一
解释
这里是使用matplotlib来绘制正态分布的曲线。
代码实现
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
import numpy as np import matplotlib.pyplot as plt def test1(n, m = 500 ): out = [] result = np.random.normal( 1 , 5 , n * m) print (result) for i in range (m): average0 = 0 for j in range (n): average0 + = result[n * i + j] if j = = n - 1 : out.append(average0 / n) average0 = 0 print (out) plt.hist(out,bins = 25 ) plt.title( "test (1)" ) plt.xlabel( "x" ) plt.ylabel( "rate" ) plt.show() test1( 5 ) |
曲线二
解释
这里使用了matplotlib.pyplot来实现指数分布的绘制,具体的代码实现参见下面所示:
代码实现
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
import numpy as np import matplotlib.pyplot as plt def test2(n, m = 500 ): out0 = [] result0 = np.random.exponential(scale = 1 , size = n * m) # print(result0) for i in range (m): average000 = 0 for j in range (n): average000 + = result0[n * i + j] if j = = n - 1 : out0.append(average000 / n) average000 = 0 # print(out0) plt.hist(out0,bins = 25 ) plt.show() test2( 5 ) |
曲线三
代码实现
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
import numpy as np import matplotlib.pyplot as plt def test3(n1, m111 = 500 ): out11 = [] # np.random.standard_t result11 = np.random.standard_t( 1 , size = n1 * m111) # print(result) for i in range (m111): average0 = 0 for j in range (n): average0 + = result11[n1 * i + j] if j = = n - 1 : out11.append(average0 / n1) average0 = 0 # print(out11) plt.hist(out11,bins = 20 ) plt.title( "test (3)" ) plt.show() test3( 30 ) |
到此这篇关于使用Python绘制三种概率曲线详解的文章就介绍到这了,更多相关Python概率曲线内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!
原文链接:https://blog.csdn.net/m0_54218263/article/details/123676513