@contract(data='isinstance(DataCollection)')
    def register(self, data):
        self.register_to_hub(data.hub)

        # add to self, then register, so fully populated by first
        # broadcast

        for d in data:
            s = GroupedSubset(d, self)
            self.subsets.append(s)

        for d, s in zip(data, self.subsets):
            d.add_subset(s)
Register to a :class:`~glue.core.data_collection.DataCollection`
dataset/ETHPy150Open glue-viz/glue/glue/core/subset_group.py/SubsetGroup.register