Hi,
if the problem is handling per-event vectors in RDF, there are a number of helpful topics on the forum, e.g.:
or in general you can search the forum: Search results for 'RDataFrame array' - ROOT Forum .
We also have a (small) section of the docs about ROOT: ROOT::RDataFrame Class Reference and a number of tutorials.
Looking at xyplot.cpp I think a relatively simple way to do something like that is to use a TH2I instead of one TH1I per channel (where the second dimension of the TH2 is for the different channels) and do something like:
df.Define("channels", getChannelArray, {"fEvent"})
.Define("leads", getLeadsArray, {"fEvent"})
.Define("reftimes", getRefTimeArray, {"fEvent"})
.Fill(th2iHistogramModel, {"channels", "leads", "reftimes"});
(I have not tested the code but it should give you an idea).
Cheers,
Enrico