0

我对 python 还很陌生,目前正在标记一些星系图像。我有一组 512x512 pix^2 图像,缩放到 0.2 arcsec/pix。每个图像都有两个要标记的对象-一个在中心(256pix,256pix),另一个在偏移处(我有对象之间的投影间隔以及两个对象的 ra-dec 值)。任务是围绕每个图像中的对象。对于中心对象来说很容易,但我坚持如何为另一个对象完成同样的事情。以下代码片段围绕中心对象进行了包围,我需要弄清楚如何为另一个对象执行此操作:

我有两个对象的 RA-DEC 值(以度为单位)。
我有对象之间的分隔(以 kpc 为单位)。

对于 .2 ''/px 处的 512x512 像素图像,这将遍历列表中的所有 objid。对于每个 objid,我在一个名为 Images_fin 的文件夹中都有一个带有 objid.png 的文件。这会加载正确的图像,并用 objid 标记它。

for galaxy in range(0, len(objid)):
    imshow(im)
    a=gca()
    print a.text(20, 480, "objID:", color ='w', fontsize='10')
    print a.text(20, 490, "w1-w2:", color ='w', fontsize='10')
    print a.text(20, 500, "sep1 (in kpc):", color ='w', fontsize='10')
    print a.text(20, 510, "sep2 (in kpc):", color ='w', fontsize='10')
    print a.text(52, 480, objid[galaxy], color='w', fontsize='10')
    print a.text(52, 490, w[galaxy], color='w', fontsize='10')
    print a.text(78, 500, sep1[galaxy], color='w', fontsize='10')
    print a.text(78, 510, sep2[galaxy], color='w', fontsize='10')

    print a.hlines(y=20, xmin=480, xmax=495, linewidth=1, color = 'w')
    print a.vlines(x=480, ymin=18, ymax=22, linewidth=1, color = 'w')
    print a.vlines(x=495, ymin=18, ymax=22, linewidth=1, color = 'w')

    print a.text(485, 18, "3\"", color='w', fontsize='10')

    a.xaxis.set_visible(False)
    a.yaxis.set_visible(False)
    circle=plt.Circle((256,256),12,color='w',fill=False)
    plt.gcf().gca().add_artist(circle)

我正在粘贴一个示例,完成后标签的外观(这是手动完成的)

4

0 回答 0