22 from matplotlib 
import pyplot
 
   28     """Plot the bounding boxes of an observation catalog (see MockCoaddTask.buildObservationCatalog) 
   29     using matplotlib, in the coordinates defined by the given Wcs (usually a skymap Wcs). 
   31     for record 
in catalog:
 
   35         iWcs = record.getWcs()
 
   36         for xi, yi 
in box.getCorners():
 
   38                 coord = iWcs.pixelToSky(xi, yi)
 
   39                 xo, yo = wcs.skyToPixel(coord)
 
   42             except Exception 
as e:
 
   43                 print(
"WARNING: point %d, %d failed: error=%s" % (xi, yi, e))
 
   44         pyplot.fill(x, y, facecolor=
'r', alpha=0.1, edgecolor=
None)
 
   48     """Plot the patches in a skymap tract using matplotlib. 
   50     nPatchX, nPatchY = tractInfo.getNumPatches()
 
   51     for iPatchX 
in range(nPatchX):
 
   52         for iPatchY 
in range(nPatchY):
 
   53             patchInfo = tractInfo.getPatchInfo((iPatchX, iPatchY))
 
   54             xp1, yp1 = 
list(zip(*patchInfo.getOuterBBox().getCorners()))
 
   55             xp2, yp2 = 
list(zip(*patchInfo.getInnerBBox().getCorners()))
 
   56             pyplot.fill(xp1, yp1, fill=
False, edgecolor=
'g', linestyle=
'dashed')
 
   57             pyplot.fill(xp2, yp2, fill=
False, edgecolor=
'g')
 
   61     """Plot the objects in a truth catalog as dots using matplotlib, in the coordinate 
   62     system defined by the given Wcs. 
   66     for record 
in catalog:
 
   67         x, y = wcs.skyToPixel(record.getCoord())
 
   70     pyplot.plot(xp, yp, 
'k+')
 
   74     """Display coadd images in different frames, with the bounding boxes of the 
   75     observations that went into them overlayed. 
   78     afwDisplay.setDefaultMaskTransparency(75)
 
   81     skyMap = butler.get(
"deepCoadd_skyMap")
 
   84     coadds = [patchRef.get(
"deepCoadd", immediate=
True)
 
   85               for patchRef 
in task.iterPatchRefs(butler, tractInfo)]
 
   86     for n, coadd 
in enumerate(coadds):
 
   87         afwDisplay.Display(frame=n + 1).
mtv(coadd, title=
"displayImages: coadd")
 
   88     for n, coadd 
in enumerate(coadds):
 
   89         afwDisplay.utils.drawCoaddInputs(coadd, frame=n + 1)
 
   94     """Convenience function to make all matplotlib plots. 
   99     skyMap = butler.get(
"deepCoadd_skyMap")
 
  100     observations = butler.get(
"observations", tract=0)
 
  101     truth = butler.get(
"truth", tract=0)
 
  102     tractInfo = skyMap[0]
 
  106     pyplot.axis(
"scaled")