Create an empty, mutable org.dianahep.histogrammar.Stacking.
Create an empty, mutable org.dianahep.histogrammar.Stacking.
Thresholds that will be used to determine which datum goes into a given container; this list gets sorted, duplicates get removed, and negative infinity gets added as the first element.
Numerical quantity whose value is compared with the given thresholds.
Template used to create zero values (by calling this value
's zero
method).
Container for data that resulted in NaN
.
Alternate constructor for org.dianahep.histogrammar.Stacked that builds from N pre-aggregated primitives (N > 0).
Alternate constructor for org.dianahep.histogrammar.Stacked that builds from N pre-aggregated primitives (N > 0).
The first result is the one that gets filled with contributions from all others, and should be plotted behind all others (first, if overlays cover each other in the usual order).
Since this kind of stacked plot is not made from numerical bins, the numerical values of the bins
are all NaN
.
Help text that can be queried interactively: more detail than help
.
Create an immutable org.dianahep.histogrammar.Stacked from arguments (instead of JSON).
Create an immutable org.dianahep.histogrammar.Stacked from arguments (instead of JSON).
Weighted number of entries (sum of all observed weights).
Lower thresholds and their associated containers, starting with negative infinity.
Container for data that resulted in NaN
.
Reconstructs a container of known type from JSON.
Help text that can be queried interactively: a one-liner that can be included in a menu.
Synonym for apply
.
Name of the concrete Factory
as a string; used to label the container type in JSON.
Accumulates a suite of aggregators, each filtered with a tighter selection on the same quantity.
This is a generalization of org.dianahep.histogrammar.Fraction, which fills two aggregators, one with a cut, the other without. Stack fills
N + 1
aggregators withN
successively tighter cut thresholds. The first is always filled (like the denominator of Fraction), the second is filled if the computed quantity exceeds its threshold, the next is filled if the computed quantity exceeds a higher threshold, and so on.The thresholds are presented in increasing order and the computed value must be greater than or equal to a threshold to fill the corresponding bin, and therefore the number of entries in each filled bin is greatest in the first and least in the last.
Although this aggregation could be visualized as a stack of histograms, stacked histograms usually represent a different thing: data from different sources, rather than different cuts on the same source. For example, it is common to stack Monte Carlo samples from different backgrounds to show that they add up to the observed data. The Stack aggregator does not make plots of this type because aggregation trees in Histogrammar draw data from exactly one source.
To make plots from different sources in Histogrammar, one must perform separate aggregation runs. It may then be convenient to stack the results of those runs as though they were created with a Stack aggregation, so that plotting code can treat both cases uniformly. For this reason, Stack has an alternate constructor to build a Stack manually from distinct aggregators, even if those aggregators came from different aggregation runs.
Factory produces mutable org.dianahep.histogrammar.Stacking and immutable org.dianahep.histogrammar.Stacked objects.