code: def bin_centers(self, axis=None):
          
          if axis is None:
              return np.array([self.bin_centers(axis=i) for i in range(self.dimensions)])
          axis = self.get_axis_number(axis)
          return 0.5 * (self.bin_edges[axis][1:] + self.bin_edges[axis][:-1])
docs: Return bin centers along an axis, or if axis=None, list of bin_centers along each axis