python - 在频率直方图上创建正态分布曲线
问题描述
我以百分比形式生成了 10000 个正态分布的随机测试分数。该数据以直方图的形式表示,该直方图在 x 轴上测量得分百分比,在 y 轴上测量得分频率。
我想用直方图中使用的平均值和标准偏差在直方图上创建一条正态分布曲线。但是,我不确定scipy.stats.norm
使用哪种方法根据频率而不是频率密度来映射曲线:
https://docs.scipy.org/doc/scipy-0.16.1/reference/generated/scipy.stats.norm.html#scipy.stats.norm
import random
import numpy as np
import matplotlib.pyplot as plt
from scipy.stats import norm
mu = 55 #mean of the data
sigma = 10 #standard deviation of data
num_bins = 100 #number of bins used
#generate 10k random test scores normally distributed
nums = [int(np.random.normal(mu, sigma)) for i in range(10000)]
#plot histogram using this data
count, bins, ignored = plt.hist(nums, num_bins, density = False)
plt.style.use('seaborn')
plt.rcParams['figure.figsize'] = (12, 8)
plt.xlabel('Score %')
plt.ylabel('Score Frequency')
plt.title('Histogram of Test Scores: $\mu=55$, $\sigma=10$')
此代码生成以下 频率分布直方图 任何帮助将不胜感激。
解决方案
推荐阅读
- php - 如何在 PHP 中的“addApiParam”上使用 foreach 循环?
- android - 如何从异步任务中的“onPostExecute”中删除事件监听器
- ios - 保存数据后。然后弹出视图控制器
- mongodb - 如何根据条件将数据框插入/更新到 Mongodb
- sas - 如何从库中的所有表中提取一些信息?
- mysql - 根据其他 2 张桌子返回可用房间
- java - 尝试在空对象引用 onCreateView(Fragment.java) 上调用虚拟方法 RecyclerView
- javascript - 无法通过节点休息应用程序上的猫鼬连接到 mongodb-altas,连接失败:“UnhandledPromiseRejectionWarning:错误:连接 EACCES”
- java - 从 ImageView 而不是 Drawable 获取图像
- php - 如何理解 DLE 中的路径?