1. Plotting an EventTable in a scatter

We can use GWpy’s EventTable to download the catalogue of gravitational-wave detections, and create a scatter plot to investigate the mass distribution of events.

First, we can download the 'GWTC-1-confident' catalogue using EventTable.fetch_open_data():

from gwpy.table import EventTable
events = EventTable.fetch_open_data(
    "GWTC-1-confident",
    columns=(
        "mass_1_source",
        "mass_2_source",
        "chirp_mass_source",
        "luminosity_distance"
    ),
)

We can now make a scatter plot by specifying the x- and y-axis columns, and (optionally) the colour:

plot = events.scatter(
    "mass_1_source", "mass_2_source",
    color="chirp_mass_source"
)
plot.colorbar(label="Chirp_mass [{}]".format(r"M$_{\odot}$"))
plot.show()

(png)

../../../_images/scatter-2.png

We can similarly plot how the total event mass is distributed with distance. First we have to build the total mass ('mtotal') column from the component masses:

events.add_column(
    events["mass_1_source"] + events["mass_2_source"],
    name="mtotal"
)

and now can make a new scatter plot:

plot = events.scatter("luminosity_distance", "mtotal")
plot.show()

(png)

../../../_images/scatter-4.png