绘制带有误差和能量的RA / DEC的功能

时间:2019-04-03 10:18:41

标签: matplotlib astropy

问题仅在于绘图技巧,有助于更好地理解数据。我有一个数据文件,其中包含源的位置(RA和DEC),RA / DEC中的错误以及在源中观察到的能量。例如,

RA || DEC || Ang_error ||能量

25.4 || 45.5 || 2 || 10

35.6 || -12.7 || 3 || 5

基本上,我想使用x轴上的RA和y轴上的DEC以及角度误差信息来绘制地图。因此,地图中的每个条目都应是一个以RA和DEC为中心,以错误为半径的圆。这是第一个要求,第二个要求是,我想用与能量值相对应的不同颜色表示每个圆。说,如果我选择“ RdBu”颜色图,红色代表最低能量,而“蓝色”代表最高能量,反之亦然。

有人可以帮助解决这种情况吗?

1 个答案:

答案 0 :(得分:0)

您应该可以使用Matplotlib scatter函数。例如,

from matplotlib import pyplot as pl

ra = [25.4, 35.6]
dec = [45.5, -12.7]
ang_err = [2, 3]
energy = [10, 5]

fig, ax = pl.subplots()
ax.scatter(ra, dec, s=ang_err, c=energy, cmap='RdBu')

或者,您可以使用诸如seaborn及其scatterplot之类的东西:

import seaborn

ra = [25.4, 35.6]
dec = [45.5, -12.7]
ang_err = [2, 3]
energy = [10, 5]

data = {'ra': ra, 'dec': dec, 'ang_err': ang_err, 'energy': energy}

fig = seaborn.scatterplot(x='ra', y='dec', data=data, hue='energy', size='ang_err')