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")