我想绘制两条正态分布曲线如下所示。与右侧较高的正态分布曲线相比,左侧较短的正态分布曲线也较窄。

我尝试了以下几点:
import seaborn as sns
import numpy as np
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
value = np.random.normal(loc=0, scale=2, size=1000)
sns.kdeplot(x = value, ax = ax, linestyle = "--", color = "red")
value2 = np.random.normal(loc= -2,scale=2, size=1000)
sns.kdeplot(x = value2, ax = ax, linestyle = "--", color = "blue")
plt.show()当两条曲线的标准偏差(尺度)相同(各2条)时,两条曲线的宽度和高度几乎相等,如下所示:

当我将蓝色曲线的标度/标准差降到0.5,并将红色曲线的标度保持为2时,蓝色曲线的宽度会变窄,但它比红色曲线要高得多,如下所示:

是否可以同时降低正态分布曲线的高度和宽度,以达到可视化目的?如何使用Python中的numpy、matplotlib或seaborn库来实现?
发布于 2022-08-29 22:42:52
.normal()输出是故意给出一个单位面积的分布。也就是说,从-∞..。+∞产生1.0。这被证明是非常有用的建模,例如pdf格式概率密度函数,其中我们知道某事发生了与概率1。
在您的代码中,您可以替换
value = np.random.normal( ...使用
value = k * np.random.normal( ...然后在k值大于1,也许是2或3的情况下,看看曲线是如何向上扩展的。根据口味调整一下。
https://numpy.org/doc/stable/reference/random/generated/numpy.random.normal.html
编辑
哦,我明白了,你在用克布利特。别干那事。它希望该区域集成到1.0。当您使用k进行缩放时,它将按1 / k进行缩放。
而更喜欢散点图。
https://stackoverflow.com/questions/73535331
复制相似问题