def define_bins(self, **kwargs):
     r"""
     This defines the bins for a range histogram
     """
     self.data_vector.sort()
     num_bins = self.args['num_bins'] + 1
     min_val = self.args['range'][0]
     max_val = self.args['range'][1]
     #
     min_val = calc_percentile(min_val, self.data_vector, False)
     max_val = calc_percentile(max_val, self.data_vector, False)
     #
     low = list(sp.linspace(min_val, max_val, num_bins))[:-1]
     high = list(sp.linspace(min_val, max_val, num_bins))[1:]
     #
     self.bins = [bin_ for bin_ in zip(low, high)]
Ejemplo n.º 2
0
 def define_bins(self):
     r"""
     This defines the bins for a regular histogram
     """
     self.data_vector.sort()
     num_bins = self.args['num_bins']
     min_val = calc_percentile(1.0, self.data_vector, False)
     max_val = calc_percentile(99.0, self.data_vector, False)
     #
     # creating initial bins
     low = list(sp.linspace(min_val, max_val, num_bins))
     high = list(sp.linspace(min_val, max_val, num_bins))[1:]
     high.append(self.data_vector[-1]*1.0001)
     #
     # adding lower bin if needed
     if self.data_vector[0] < min_val:
         low.insert(0, self.data_vector[0])
         high.insert(0, min_val)
     #
     self.bins = [bin_ for bin_ in zip(low, high)]