class_docstr: Represents a histogram of real-valued events.
  
  A histogram is a list of counts, each over a range of values.
  For example, given this list of values [0.5, 0.0, 1.0, 0.6, 1.5, 2.4, 0.1],
  a histogram over 3 ranges [0, 1), [1, 2), [2, 3) would be:
    [0, 1): 4
    [1, 2): 2
    [2, 3): 1
  Each range is inclusive in the lower bound and exclusive in the upper bound
  (hence the square open bracket but curved close bracket).
  
  Usage examples:
      A distribution over input/output lengths.
      A distribution over compute times.
code: def _pretty_print(self, name):
      b = self.buckets + [float("inf")]
      return ("%s:\n" % name) + "\n".join(
          [
              "  [%s,%s): %d" % (lower, b[i + 1], self.counters[lower])
              for i, lower in enumerate(self.buckets)
              if self.verbose_pretty_print or self.counters[lower]
          ]
      )
  
imports: import abc
  import bisect
  import copy
  import tensorflow.compat.v1
label_desc: Use image node_id 5 for calling the Histogram obj's underlying member method code with example usage: obj._pretty_print(name) and returns: unknown