Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
hist010_TH1_two_scales_uhi.py File Reference

Detailed Description

View in nbviewer Open in SWAN
Example of macro illustrating how to superimpose two histograms with different scales in the "same" pad.

Inspired by work of Rene Brun.

Q

import matplotlib.pyplot as plt
import mplhep as hep
import numpy as np
import ROOT
fig, ax1 = plt.subplots(figsize=(10, 6))
h1 = ROOT.TH1F("h1", "my histogram", 100, -3, 3)
h1[...] = np.histogram(np.random.normal(0, 1, 10000), range=(-3, 3), bins=100)[0]
hep.histplot(h1, ax=ax1, histtype="fill", color="white", edgecolor="blue", linewidth=1.5, alpha=0.5)
hint1 = ROOT.TH1F("hint1", "h1 bins integral", 100, -3, 3)
hint1[...] = np.cumsum(h1.values())
ax2 = ax1.twinx()
hep.histplot(hint1, ax=ax2, histtype="errorbar", color="red", marker="+", markersize=3)
plt.title("Histogram with Cumulative Sum")
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
Date
July 2025
Author
Alberto Ferro, Nursena Bitirgen

Definition in file hist010_TH1_two_scales_uhi.py.