微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在python中绘制分布的分数

如何解决在python中绘制分布的分数

我试图将分布的分数绘制为给定参数(例如密度)的函数。假设我的数据有 1730 个星系,其中 266 个是非孤立星系。我想绘制如下图:Playground link to code

([O ii] 发射器中非孤立星系的比例被绘制为星系局部密度的函数。虚线显示对数据的线性拟合。这里采用的 log Σ10th bin 的大小为 0.2 dex ,除了只有少数对象的最低和最高 logΣ10 个 bin(这些 bin 为 0.3 dex)。

这是我的示例

Fraction of non-isolated galaxies among [O ii] emitters is plotted as a function of the galaxy local density

我试图这样绘制

import numpy as np
import matplotlib.pyplot as plt
from astropy.table import Table,join,unique,vstack

data=Table.read('data_test.fits')
non_iso_data=data[data['is_non_isolation']==True] #Selecting non-isolation

density=np.log10(data['density'])
density_non_iso=np.log10(non_iso_data['density'])
nbins=7
bins=np.logspace(np.log10(np.min(density)),np.log10(np.max(density)),num=n_bins)
plt.hist(density,bins=bins,weights=1/(len(data))

我不确定如何执行此操作以及如何绘制这样的错误

请帮我解决这个问题。谢谢

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。