def drawCMD(self, ax=None, radius=None, zidx=None):
if not ax: ax = plt.gca()
import ugali.isochrone
if zidx is not None:
filename = self.config.mergefile
logger.debug("Opening %s..."%filename)
f = pyfits.open(filename)
distance_modulus = f[2].data['DISTANCE_MODULUS'][zidx]
iso = ugali.isochrone.Padova(age=12,z=0.0002,mod=distance_modulus)
#drawIsochrone(iso,ls='',marker='.',ms=1,c='k')
drawIsochrone(iso)
# Stellar Catalog
self._create_catalog()
if radius is not None:
sep = ugali.utils.projector.angsep(self.glon,self.glat,self.catalog.lon,self.catalog.lat)
cut = (sep < radius)
catalog_cmd = self.catalog.applyCut(cut)
else:
catalog_cmd = self.catalog
ax.scatter(catalog_cmd.color, catalog_cmd.mag,color='b',marker='.',s=1)
ax.set_xlim(self.roi.bins_color[0],self.roi.bins_color[-1])
ax.set_ylim(self.roi.bins_mag[-1],self.roi.bins_mag[0])
ax.set_xlabel('Color (mag)')
ax.set_ylabel('Magnitude (mag)')
try: ax.cax.colorbar(im)
except: pass
ax.annotate("Stars",**self.label_kwargs)
评论列表
文章目录