40 for (
auto p : fHistoryData) {
47 if (!fHistoryMap.count(Property))
49 fHistoryMap[Property]=fHistoryData.size();
51 fHistoryData.push_back(data);
53 int iHistory=fHistoryMap.at(Property);
55 fHistoryData.at(iHistory)->push_back({stage,value});
61 for (
const auto &element : fHistoryMap ) {
62 TString property = element.first;
63 Int_t iHistory = element.second;
64 Int_t nBins=fHistoryData.at(iHistory)->size();
65 Double_t xMin=fHistoryData.at(iHistory)->front().first;
66 Double_t xMax=fHistoryData.at(iHistory)->back().first;
68 TH1D*
h=
new TH1D(
"TrainingHistory_"+
Name+
"_"+property,
"TrainingHistory_"+
Name+
"_"+property,nBins,xMin-0.5*BinSize,xMax+0.5*BinSize);
69 for (
int i=0; i<nBins; i++) {
70 h->AddBinContent(i+1,fHistoryData.at(iHistory)->at(i).second);
1-D histogram with a double per channel (see TH1 documentation)}
void AddValue(TString Property, Int_t stage, Double_t value)
std::vector< std::pair< Int_t, Double_t > > IterationRecord
virtual ~TrainingHistory()
void SaveHistory(TString Name)
TrainingHistory()
constructor