When using RDataFrame::Histo2D, passing a TH2DModel with identical lower/upper limits, the histogram range is automatically determined (I guess it’s a case of this: ROOT: TH1 Class Reference, I haven’t found documentation for TH2).
Example:
hxy = df.Histo2D(("xy", "xy; x; y", 100, -1,-1, 100, -1, -1), "x", "y")
Normally this seems to work fairly well but I’m looking at a few cases right now, where I have over/underflows in one or both of the axes.
Two questions:
-
Is this a bug or could this be an issue with insufficient buffer size (as mentioned in the TH1 documentation)? If this is the case, is there a way to control the buffer size for Histo2D, when the underlying TH2 is not directly handles by the user?
-
When automatically binning one axis, explicitly-given ranges for the other axis are silently ignored. Maybe Histo2D/TH2 could warn about this behaviour, if this is the intended behaviour/due to inherent limitations.
Example:
hxy = df.Histo2D(("xy", "xy; x; y", 100, -1,-1, 100, 0, 10), "x", "y")
# Expect: automatic bins for x, given bins for y. Result: automatic bins for both
ROOT version: 6.30.02