23TString stime(time_t* t,
bool utc =
false,
bool display_time_zone =
true) {
25 if (utc)
tt = gmtime(t);
26 else tt = localtime(t);
28 if (display_time_zone) strftime(buf,
sizeof(buf),
"%Y-%m-%d %H:%M:%S %Z",
tt);
29 else strftime(buf,
sizeof(buf),
"%Y-%m-%d %H:%M:%S",
tt);
56 time_t offset[] = {0, 0, 1325376000, 1341100800};
57 time_t t[] = {1331150400, 1336417200, 0, 36000};
59 c->SetTopMargin(0);
c->SetBottomMargin(0);
60 c->SetLeftMargin(0);
c->SetRightMargin(0);
61 c->Divide(2, 4, -1, -1);
65 for(
int i = 0; i < 4; ++i){
66 for(
int gmt = 0; gmt < 2; ++gmt){
67 const char* opt = (gmt ?
"gmt" :
"local");
73 TGaxis* ga =
new TGaxis (.4, .25, 5., .25, t[i], t[i] + 1, 1,
"t");
74 ga->
SetTimeFormat(
"TGaxis label: #color[2]{%Y-%m-%d %H:%M:%S}");
87 TAxis a(10, 0, 1600000000);
88 a.SetTimeOffset(offset[i], opt);
89 const char* offsettimeformat =
a.GetTimeFormat();
92 if (offset[i] < t[i]) {
93 sprintf(buf,
"#splitline{%s, %s}{offset: %ld, option %s}",
94 stime(t+i).Data(), stime(t+i,
true).Data(), offset[i], opt);
97 int m = (t[i] - 3600 *
h) / 60 ;
98 int s = (t[i] -
h * 3600 -
m * 60);
99 sprintf(buf,
"#splitline{%d h %d m %d s}{offset: %s, option %s}",
100 h,
m, s, stime(offset + i, gmt).Data(), opt);
103 tex2->
DrawLatex(.01, .50, offsettimeformat);
104 time_t t_ = t[i] + offset[i];
105 sprintf(buf,
"Expecting: #color[2]{%s}", stime(&t_, gmt,
false).Data());
virtual void SetFillStyle(Style_t fstyle)
Set the fill area style.
virtual void SetLineColor(Color_t lcolor)
Set the line color.
virtual void SetBottomMargin(Float_t bottommargin)
Set Pad bottom margin in fraction of the pad height.
virtual void SetLeftMargin(Float_t leftmargin)
Set Pad left margin in fraction of the pad width.
virtual void SetRightMargin(Float_t rightmargin)
Set Pad right margin in fraction of the pad width.
virtual void SetTopMargin(Float_t topmargin)
Set Pad top margin in fraction of the pad height.
virtual void SetTextColor(Color_t tcolor=1)
Set the text color.
virtual void SetTextFont(Font_t tfont=62)
Set the text font.
virtual void SetTextSize(Float_t tsize=1)
Set the text size.
Class to manage histogram axis.
void SetTimeFormat(const char *tformat)
Change the format used for time plotting.
void SetLabelFont(Int_t labelfont)
void SetLabelOffset(Float_t labeloffset)
void SetTimeOffset(Double_t toffset, Option_t *option="local")
Change the time offset. If option = "gmt", set display mode to GMT.
void SetLabelColor(Int_t labelcolor)
void SetLabelSize(Float_t labelsize)
To draw Mathematical Formula.
void DrawLine(Double_t x1, Double_t y1, Double_t x2, Double_t y2, TextSpec_t spec)
Draw a line in a Latex formula.
TLatex * DrawLatex(Double_t x, Double_t y, const char *text)
Make a copy of this object with the new parameters And copy object attributes.
Use the TLine constructor to create a simple line.
virtual TLine * DrawLine(Double_t x1, Double_t y1, Double_t x2, Double_t y2)
Draw this line with new coordinates.
virtual void Draw(Option_t *option="")
Default Draw method for all objects.
virtual void SetNDC(Bool_t isNDC=kTRUE)
Set NDC mode on if isNDC = kTRUE, off otherwise.
TVirtualPad is an abstract base class for the Pad and Canvas classes.
virtual TVirtualPad * cd(Int_t subpadnumber=0)=0