{ gROOT->Reset(); #include "Riostream.h" // Graphics gStyle->SetOptStat(000000000); gStyle->SetOptFit(000000000); gStyle->SetOptFit(); gStyle->SetStatColor(10); gStyle->SetStatFontSize(0.035); gStyle->SetStatFont(42); gStyle->SetTextFont(42); gStyle->SetTitleOffset(1.07,"xyz"); gStyle->SetLabelFont(42,"xyz"); gStyle->SetLabelSize(0.035,"xyz"); gStyle->SetLabelOffset(0.010,"xyz"); gStyle->SetTitleFont(42,"xyz"); gStyle->SetTitleFillColor(10); gStyle->SetStripDecimals(kFALSE); TGaxis::SetMaxDigits(4); // Variables Int_t num_data = 24494; // Size of data-set TString dateStr1; // Date (dd/mm/yyyy) TString dateStr2; // Date (hh:mm:ss) TString dateStr3[num_data]; // AM/PM/XX Double_t Tim0[num_data]; // time ticket (sec) Double_t Time[num_data]; // Elapsed time (min) Double_t ErrT[num_data]; // Error on elapsed time (min) Double_t Peso[num_data]; // Weight (g) Double_t ErrP[num_data]; // Error on weight (g) Double_t Humi[num_data]; // Relative humidity (%) Double_t ErrH[num_data]; // Error on relative humidity (%) Double_t Temp[num_data]; // Temperature (C) Double_t ErrE[num_data]; // Error on temperature (C) Double_t X2[num_data]; // Time vector // Time offset TDatime T0(2007,01,01,00,00,00); Int_t X0 = T0.Convert(); gStyle->SetTimeOffset(X0); // Time limits for the plots TDatime TA(2007,01,01,00,00,00); TDatime TB(2008,01,01,00,00,00); Int_t XA = TA.Convert()-X0; Int_t XB = TB.Convert()-X0; // Load data from index.dat ifstream in_file; in_file.open("./Deumidita2007_test.txt"); for (Int_t i=0; i>dateStr1 >>dateStr2 >>dateStr3[i] >>Tim0[i] >>Peso[i] >>Humi[i] >>Temp[i]; ErrT[i] = 0.0010; ErrP[i] = 0.0001; ErrH[i] = 0.0050; ErrE[i] = 0.0050; // Date-time transformation const TPRegexp r1("(\\d{2})\/(\\d{2})\/(\\d{4})"); const TPRegexp r2("(\\d{2}):(\\d{2}):(\\d{2})"); const TObjArray *subStrL1 = r1.MatchS(dateStr1); const TObjArray *subStrL2 = r2.MatchS(dateStr2); if (subStrL1->GetLast()+1 >= 3) { const Int_t day = ((TObjString *)subStrL1->At(1))->GetString().Atoi(); const Int_t month = ((TObjString *)subStrL1->At(2))->GetString().Atoi(); const Int_t year = ((TObjString *)subStrL1->At(3))->GetString().Atoi(); const Int_t hour = ((TObjString *)subStrL2->At(1))->GetString().Atoi(); const Int_t min = ((TObjString *)subStrL2->At(2))->GetString().Atoi(); const Int_t sec = ((TObjString *)subStrL2->At(3))->GetString().Atoi(); TDatime t(year,month,day,hour,min,sec); // t.Print(); X2[i] = t.Convert(1)-X0; // cout <SetFillColor(10); c1->SetGrid(); c1->Modified(); // Plot Relative Humidity data TGraphErrors *gr1 = new TGraphErrors(num_data,X2,Humi,ErrT,ErrH); gr1->SetMarkerColor(kGreen); gr1->SetMarkerStyle(22); gr1->SetMarkerSize(0.5); gr1->SetLineWidth(1.5); gr1->GetXaxis()->SetLimits(XA,XB); gr1->GetYaxis()->SetLimits(0,300); gr1->GetXaxis()->SetTimeDisplay(1); // gr1->GetXaxis()->SetTimeFormat("#splitline{%d\/%m}{%Y}"); gr1->SetTitle("Stanza 4020 - Edificio U2 - 2007"); gr1->GetXaxis()->SetTitle("Elapsed Time (days)"); gr1->GetYaxis()->SetTitle("Relative Humidity (%)"); gr1->GetXaxis()->CenterTitle(); gr1->GetYaxis()->CenterTitle(); gr1->Draw("PA"); // Save the image c1->Update(); c1->Print("lab2007_1.gif"); }