Class Histogram

java.lang.Object
net.jqwik.api.statistics.Histogram
All Implemented Interfaces:
StatisticsReportFormat
Direct Known Subclasses:
NumberRangeHistogram

@API(status=EXPERIMENTAL, since="1.3.0") public class Histogram extends Object implements StatisticsReportFormat
A statistics report format to display collected statistics entries as a histogram
  • Constructor Details

    • Histogram

      public Histogram()
  • Method Details

    • formatReport

      public List<String> formatReport(List<StatisticsEntry> entries)
      Description copied from interface: StatisticsReportFormat
      Return a list of report lines. Often, one line will represent one entry but that must not necessarily be the case.
      Specified by:
      formatReport in interface StatisticsReportFormat
      Returns:
      All report lines. No trailing `CR` or `LF` characters are needed.
      See Also:
    • maxDrawRange

      protected int maxDrawRange()
      Determine how many block characters are maximally used to draw the distribution. The more you have the further the histogram extends to the right.

      Can be overridden.

      Returns:
      A positive number. Default is 80.
    • comparator

      protected Comparator<? super StatisticsEntry> comparator()
      Determine how entries are being sorted from top to bottom.

      Can be overridden.

      Returns:
      A comparator instance.
    • label

      protected String label(StatisticsEntry entry)
      Determine how entries are being labelled in the histogram.

      Can be overridden.

      Parameters:
      entry -
      Returns:
      A non-null string
    • cluster

      protected List<Histogram.Bucket> cluster(List<StatisticsEntry> entries)
      Cluster entries into buckets.

      Override if entries should be aggregated into buckets to display in histogram.

      Parameters:
      entries - An already sorted list of entries
      Returns:
      A sorted list of buckets
    • labelColumnHeader

      @API(status=EXPERIMENTAL, since="1.3.8") protected String labelColumnHeader()
      Change the displayed name of the label column
      Returns:
      the string to show as header of the column