22 TIter next( TMVAMultiClassGui_keyContent );
35 cbar->
AddButton( title, macro, comment, buttonType );
38 if (requiredKey !=
"") {
40 TIter next( TMVAMultiClassGui_keyContent );
45 if (!found) TMVAMultiClassGui_inactiveButtons.push_back( title );
58 gROOT->SetMacroPath(curMacroPath+
":./:$ROOTSYS/tmva/test/:");
71 std::cout <<
"--- Launch TMVA GUI to view input file: " << fName << std::endl;
74 TMVAMultiClassGui_inactiveButtons.clear();
79 std::cout <<
"==> Abort TMVAMultiClassGui, please verify filename" << std::endl;
88 TString defaultRequiredClassifier =
"";
94 TControlBar* cbar =
new TControlBar(
"vertical",
"TMVA Plotting Macros for Multiclass Classification", 0, 0 );
96 const TString buttonType(
"button" );
108 TString title =
Form(
"Input variables '%s'-transformed (training sample)",
110 if (tmp.
Contains(
"Id" )) title =
"Input variables (training sample)";
112 Form(
"(%i%c) %s", ic, ch++, title.
Data() ),
113 Form(
"TMVA::variablesMultiClass(\"%s\",\"%s\",\"%s\")", fName, str->
GetString().
Data(), title.
Data() ),
114 Form(
"Plots all '%s'-transformed input variables (macro variablesMultiClass(...))", str->
GetString().
Data() ),
120 it.
Reset(); ch =
'a';
123 TString title =
Form(
"Input variable correlations '%s'-transformed (scatter profiles)",
125 if (tmp.
Contains(
"Id" )) title =
"Input variable correlations (scatter profiles)";
127 Form(
"(%i%c) %s", ic, ch++, title.
Data() ),
128 Form(
"TMVA::CorrGuiMultiClass(\"%s\",\"%s\",\"%s\")", fName, str->
GetString().
Data(), title.
Data() ),
129 Form(
"Plots all correlation profiles between '%s'-transformed input variables (macro CorrGuiMultiClass(...))",
136 title =
Form(
"(%i) Input Variable Linear Correlation Coefficients", ++ic );
139 Form(
"TMVA::correlationsMultiClass(\"%s\")", fName ),
140 "Plots signal and background correlation summaries for all input variables (macro correlationsMultiClass.cxx)",
143 title =
Form(
"(%ia) Classifier Output Distributions (test sample)", ++ic );
146 Form(
"TMVA::mvasMulticlass(\"%s\",TMVA::kMVAType)", fName ),
147 "Plots the output of each classifier for the test data (macro mvas(...,0))",
148 buttonType, defaultRequiredClassifier );
150 title =
Form(
"(%ib) Classifier Output Distributions (test and training samples superimposed)", ic );
153 Form(
"TMVA::mvasMulticlass(\"%s\",TMVA::kCompareType)", fName ),
154 "Plots the output of each classifier for the test (histograms) and training (dots) data (macro mvas(...,3))",
155 buttonType, defaultRequiredClassifier );
215 title =
Form(
"(%ia) Network Architecture (MLP)", ++ic );
216 TString call =
Form(
"TMVA::network(\"%s\")", fName );
220 "Plots the MLP weights (macro network.cxx)",
223 title =
Form(
"(%ib) Network Convergence Test (MLP)", ic );
226 Form(
"TMVA::annconvergencetest(\"%s\")", fName ),
227 "Plots error estimator versus training epoch for training and test samples (macro annconvergencetest.cxx)",
230 title =
Form(
"(%i) Decision Trees (BDT)", ++ic );
233 Form(
"TMVA::BDT(\"%s\")", fName ),
234 "Plots the Decision Trees trained by BDT algorithms (macro BDT(itree,...))",
246 title =
Form(
"(%i) Plot Foams (PDEFoam)", ++ic );
249 "TMVA::PlotFoams(\"weights/TMVAMulticlass_PDEFoam.weights_foams.root\")",
250 "Plot Foams (macro PlotFoams.cxx)",
251 buttonType,
"PDEFoam" );
262 cbar->
AddButton(
Form(
"(%i) Quit", ++ic ),
".q",
"Quit", buttonType );
274 for (
UInt_t i=0; i<TMVAMultiClassGui_inactiveButtons.size(); i++) cbar->
SetButtonState( TMVAMultiClassGui_inactiveButtons[i], 3 );
275 if (TMVAMultiClassGui_inactiveButtons.size() > 0) {
276 std::cout <<
"=== Note: inactive buttons indicate that the corresponding classifiers were not trained ===" << std::endl;
279 gROOT->SaveContext();
void Show()
Show control bar.
void AddButton(TControlBarButton *button)
Add button.
static std::vector< TString > TMVAMultiClassGui_inactiveButtons
A Control Bar is a fully user configurable tool which provides fast access to frequently used operati...
void SetTextColor(const char *colorName)
Sets text color for control bar buttons, e.g.
ClassImp(TSeqCollection) Int_t TSeqCollection TIter next(this)
Return index of object in collection.
Collectable string class.
void MultiClassActionButton(TControlBar *cbar, const TString &title, const TString ¯o, const TString &comment, const TString &buttonType, TString requiredKey="")
TString & ReplaceAll(const TString &s1, const TString &s2)
virtual TList * GetListOfKeys() const
A ROOT file is a suite of consecutive data records (TKey instances) with a well defined format...
static TFile * Open(const char *name, Option_t *option="", const char *ftitle="", Int_t compress=1, Int_t netopt=0)
Create / open a file.
virtual TObject * Clone(const char *newname="") const
Make a clone of an collection using the Streamer facility.
const char * Data() const
Book space in a file, create I/O buffers, to fill them, (un)compress them.
void TMVAMultiClassGui(const char *fName="TMVAMulticlass.root")
TString GetString() const
R__EXTERN TSystem * gSystem
char * Form(const char *fmt,...)
virtual const char * GetName() const
Returns name of object.
static TList * TMVAMultiClassGui_keyContent
virtual const char * GetIncludePath()
Get the list of include path.
virtual void Add(TObject *obj)
Bool_t Contains(const char *pat, ECaseCompare cmp=kExact) const
void AddSeparator()
Add separator.
void Reset()
Reset list iterator.
void SetButtonState(const char *label, Int_t state=0)
Sets a state for control bar button 'label'; possible states are 0-kButtonUp, 1-kButtonDown, 2-kButtonEngaged, 3-kButtonDisabled,.
TList * MultiClassGetKeyList(const TString &pattern)
virtual void SetIncludePath(const char *includePath)
IncludePath should contain the list of compiler flags to indicate where to find user defined header f...
virtual void Close(Option_t *option="")
Close a file.