有没有办法在不使用 distplot 的情况下以绘图方式绘制高斯曲线(缩放到 y 轴而不对其进行标准化)?

2024-01-09

enter image description here I have been trying to plot a histogram fitted with a gaussian, the mean along with 1 sigma standard deviation errors. Using ff.create_distplot does not allow us to choose the range for the y axis we require, it automatically normalizes it. I have tried using the matplotlib version of things and tried making it work on plotly but without any avail. My code is given below. Any help will be appreciated. Thank You.

从图像中您可以看到高斯已标准化。如何将其缩放到 y 轴?

GX= pd.read_csv(r'X.....X.


csv')
df = pd.DataFrame(GX, columns = ['ra','dec','rest','b_rest','B_rest','pmra','pmra_error','pmdec','pmdec_error','PM'])
ra = df['ra'].tolist()
dec = df['dec'].tolist()
rest = df['rest'].tolist()
b_rest = df['b_rest'].tolist()
B_rest = df['B_rest'].tolist()
pmra = df['pmra'].tolist()
pmra_E = df['pmra_error'].tolist()
pmdec = df['pmdec'].tolist()
pmdec_E = df['pmdec_error'].tolist()
PM = df['PM'].tolist() 
PM1 = []
c = 0
for i in range(len(PM)):
    if (PM[i]<100 and pmra[i]>-4.5 and pmra[i]<1.5 and pmdec[i]>1 and pmdec[i]<3):
        PM1.append(PM[i])
        c+=1
group_labels = ['Proper Motion']
color = ['#636EFA', '#EF553B', '#00CC96', '#AB63FA', '#FFA15A', '#19D3F3', '#FF6692', '#B6E880', '#FF97FF', '#FECB52']    
fig = go.Figure()
fig.add_trace(
    go.Histogram(
        x = PM1
    )
)
mean = np.mean(PM1)
variance = np.var(PM1)
sigma = np.sqrt(PM1)
fig.add_trace(
    go.Scatter(
        name = 'Gaussian',
        mode = 'lines',
        x = PM1,
        y = mlab.normpdf(PM1, mean, sigma)
    )
)
#Line Plot for mean
mean = np.mean(PM1)
stdev_pluss = mean + np.std(PM1)
stdev_minus = mean - np.std(PM1)
median = np.median(PM1)
fig.add_trace(
    go.Scatter(
        name = 'Mean',
        x=[2.769491040712437]*1000,
        y = np.linspace(0,105,num = 1000),
        mode="lines",
        marker=dict(
            size=2,
            line=dict(
                color = 'rgb(128,177,211)',
                width=1
            )
        )
    )
)
#Line Plot for Median
fig.add_trace(
    go.Scatter(
        name = 'Median',
        x=[2.800431666]*1000,
        y = np.linspace(0,105,num = 1000),
        mode="lines",
        marker=dict(
            size=2,
            line=dict(
                color = 'rgb(128,177,211)',
                width=1
            )
        )
    )
)
#Plotting Standard Deviation Lines
fig.add_trace(
    go.Scatter(
        name = 'Stdev-',
        x=[(stdev_minus)]*1000,
        y = np.linspace(0,105,num = 1000),
        mode="lines",
        marker=dict(
            size=2,
            line=dict(
                color = 'rgb(128,177,211)',
                width=1
            )
        )
    )
)
fig.add_trace(
    go.Scatter(
        name = 'Stdev+',
        x=[(stdev_pluss)]*1000,
        y = np.linspace(0,105,num = 1000),
        mode="lines",
        marker=dict(
            size=2,
            line=dict(
                color = 'rgb(128,177,211)',
                width=1
            )
        )
    )
)


fig.update_layout(
    title = 'Proper Motion Histogram + Gaussian distribution ',
    xaxis = dict(
        title='Proper Motion'
    ),
    yaxis = dict(
        title='Count'
    ),
    template = 'plotly_dark',
    showlegend = True
)
fig.show()
print('Mean :{}\nMedian: {}\nStandard Deviation: {}'.format(mean,median,stdev))

None

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

有没有办法在不使用 distplot 的情况下以绘图方式绘制高斯曲线(缩放到 y 轴而不对其进行标准化)? 的相关文章

  • 如何更改 FacetGrid 中的边距标题颜色

    使用 Seaborn Facet Grids 如何仅更改边距标题的颜色 注意g set titles color red 更改两个标题 p sns load dataset penguins sns displot data p x fli
  • 上传时的 Google Drive API——这些额外的空行从何而来?

    总结一下该程序 我从我的 Google 云端硬盘下载一个文件 然后在本地计算机中打开并读取一个文件 file a txt 然后在我的计算机中打开另一个文件 file b txt 处于附加模式 并且在使用这个新的 file b 更新我的 Go
  • 使用 Python 创建 MIDI

    本质上 我正在尝试从头开始创建 MIDI 并将它们放到网上 我对不同的语言持开放态度 但更喜欢使用Python 两种语言之一 如果这有什么区别的话 并且想知道我应该使用哪个库 提前致谢 看起来这就是您正在寻找的 适用于 Python 的简单
  • NumPy linalg.eig

    我有这个烦人的问题 但我还没有弄清楚 我有一个矩阵 我想找到特征向量 所以我写 val vec np linalg eig mymatrix 然后我得到了 vec 我的问题是 当我小组中的其他人对相同的矩阵 mymatrix 做同样的事情时
  • 字符串中的注释和注释中的字符串

    我正在尝试使用 Python 和 Regex 计算 C 代码中包含的注释中的字符数 但没有成功 我可以先删除字符串以删除字符串中的注释 但这也会删除注释中的字符串 结果会很糟糕 是否有机会通过使用正则表达式来询问不匹配注释中的字符串 反之亦
  • “一旦获取切片就无法更新查询”。最佳实践?

    由于我的项目的性质 我发现自己不断地从查询集中取出切片 如下所示 Thread objects filter board requested board id order by updatedate 10 但这给我带来了实际对我选择的元素进
  • 在相同任务上,Keras 比 TensorFlow 慢

    我正在使用 Python 运行斩首 DCNN 本例中为 Inception V3 来获取图像特征 我使用的是 Anaconda Py3 6 和 Windows7 使用 TensorFlow 时 我将会话保存在变量中 感谢 jdehesa 并
  • 设置 verify_certs=False 但 elasticsearch.Elasticsearch 因证书验证失败而引发 SSL 错误

    self host KibanaProxy 自我端口 443 self user 测试 self password 测试 我需要禁止证书验证 使用选项时它与curl一起使用 k在命令行上 但是 在使用 Elasticsearch pytho
  • 如何从 JSON 响应重定向?

    所以我尝试使用 Flask 和 Javascript 上传器 Dropzone 上传文件并在上传完成后重定向 文件上传正常 但在烧瓶中使用传统的重定向 return redirect http somesite com 不执行任何操作 页面
  • GradientTape 根据损失函数是否被 tf.function 修饰给出不同的梯度

    我发现计算的梯度取决于 tf function 装饰器的相互作用 如下所示 首先 我为二元分类创建一些合成数据 tf random set seed 42 np random seed 42 x tf random normal 2 1 y
  • Python:我不明白 sum() 的完整用法

    当然 我明白你使用 sum 与几个数字 然后它总结所有 但我正在查看它的文档 我发现了这一点 sum iterable start 第二个参数 start 的作用是什么 这太尴尬了 但我似乎无法通过谷歌找到任何示例 并且对于尝试学习该语言的
  • 使用 Conda 更新特定模块会删除大量软件包

    我最近开始使用 Anaconda Python 发行版 因为它提供了许多开箱即用的数据分析库 使用 conda 创建环境和安装软件包也轻而易举 但是当我想更新 Python 本身或任何其他模块时 我遇到了一些严重的问题 我事先被告知我的很多
  • 从 python 检测 macOS 中的暗模式

    我正在编写一个 PyQt 应用程序 我必须添加一个补丁 以便在启用暗模式的 Macos 上可以读取字体 app QApplication Fix for the font colours on macos when running dark
  • sqlite3从打印数据中删除括号

    我创建了一个脚本 用于查找数据库第一行中的最后一个值 import sqlite3 global SerialNum conn sqlite3 connect MyFirstDB db conn text factory str c con
  • falcon,AttributeError:“API”对象没有属性“create”

    我正在尝试测试我的猎鹰路线 但测试总是失败 而且看起来我把所有事情都做对了 my app py import falcon from resources static import StaticResource api falcon API
  • PIL - 需要抖动,但限制调色板会导致问题

    我是 Python 新手 正在尝试使用 PIL 来执行 Arduino 项目所需的解析任务 这个问题涉及到Image convert 方法以及调色板 抖动等选项 我有一些硬件能够一次仅显示 16 种颜色的图像 但它们可以指定为 RGB 三元
  • 导入错误:无法导入名称“时间戳”

    我使用以下代码在 python 3 6 3 中成功安装了 ggplot conda install c conda forge ggplot 但是当我使用下面的代码将其导入笔记本时 出现错误 from ggplot import Impor
  • Python问题:打开和关闭文件返回语法错误

    大家好 我发现了这个有用的 python 脚本 它允许我从网站获取一些天气数据 我将创建一个文件和其中的数据集 有些东西不起作用 它返回此错误 File
  • python 日志记录会刷新每个日志吗?

    当我使用标准模块将日志写入文件时logging 每个日志会分别刷新到磁盘吗 例如 下面的代码会将日志刷新 10 次吗 logging basicConfig level logging DEBUG filename debug log fo
  • 使用 Python 将对象列表转为 JSON

    我在转换时遇到问题Object实例到 JSON ob Object list name scaping myObj base url u number page for ob in list name json string json du

随机推荐