我正在使用 pyds9 自动加载拟合图像(用于与天文学相关的目的)。
我能够配置所有其他设置,如比例、颜色和缩放级别。对于每张图片,我想做的是在特定位置画一个小圆圈,突出显示该区域。默认情况下,此颜色为绿色。如何更改此颜色?
还有没有办法改变这个圆圈的厚度?我遇到了能见度问题。对于所有 cmap 和比例组合,绿色都不是清晰可见的。像红色这样的东西会更好。
我查看了 XPAset 命令。有办法做到这一点。但我不知道如何在 pyds9 中做到这一点。这是所有 XPAset 命令的链接:http: //ds9.si.edu/ref/xpa.html#regions
xpaset 命令是:
*$xpaset -p ds9 regions command '{circle 100 100 20 # color=red}'*
如何将此 xpaset 命令转换为 pyds9 的d.set()
方法?
我的意思是:d.set('regions','fk5; circle(100,100,20") # color=red')
以下是我正在使用的代码:
import ds9
# x is the RA and y is the DEC
# for describing the location of astronomical objects
x = 200.1324
y = 20.3441
# the four FITS images to be loaded
image_list = ['img1.fits.gz','img2.fits.gz','img3.fits.gz','img4.fits.gz']
#initializing a ds9 window
d = ds9.ds9(target='DS9:*', start=True, verify=True)
for i in range(len(image_list)):
d.set('frame ' + str(i+1))
d.set('file ' + image_list[i])
d.set('cmap bb')
d.set('cmap invert')
d.set('scale zscale')
d.set('scale linear')
d.set('regions','fk5; circle('+str(x)+','+str(y)+',20")')
# This previous line draws a green circle with center at (x,y)
# and radius of 20 arc-sec. But the color is by default green.
# I want to change this to lets say red. How do I do it ???
# arranging the 4 images in tile format
d.set('tile')
for i in range(len(image_list)):
d.set('frame ' + str(i+1))
d.set('zoom to fit')
d.set('saveimage png myimagename.png')
# time to remove all the images from the frames
# so that the some new set of images could be loaded
for i in range(len(image_list)):
d.set('frame delete')