Details | Last modification | View Log | RSS feed
| Rev | Author | Line No. | Line |
|---|---|---|---|
| 309 | f9daq | 1 | #include <stdlib.h> |
| 2 | #include <stdio.h> |
||
| 3 | #include <TCanvas.h> |
||
| 4 | #include <TGraph.h> |
||
| 5 | |||
| 6 | int TDraw(const char *fname ){ |
||
| 7 | FILE *fp=fopen(fname,"r"); |
||
| 8 | if (!fp) return -1; |
||
| 9 | unsigned long t; |
||
| 10 | int type; |
||
| 11 | float temp0; |
||
| 12 | |||
| 13 | TGraph *gr[3]; |
||
| 14 | |||
| 15 | float f[10]; |
||
| 16 | int j=0; |
||
| 17 | int ndim=400; |
||
| 18 | char line[400]; |
||
| 19 | int colorTable[14] = { kBlack, kGray, kRed, kGreen, kBlue, kYellow, kMagenta, kCyan, kOrange, kSpring, kTeal, kAzure, kViolet, kPink }; |
||
| 20 | char SensorType[3][16]={"T","Tmin","Tmax"} |
||
| 21 | double time0; |
||
| 22 | int first=1; |
||
| 23 | TLegend *leg= new TLegend(0.85,0.8,1,0.95); |
||
| 24 | for (int i=0;i<3;i++) { |
||
| 25 | gr[i] = new TGraph(); |
||
| 26 | gr[i]->SetLineColor(colorTable[i%14]); |
||
| 27 | gr[i]->SetLineWidth(3); |
||
| 28 | gr[i]->SetMarkerColor(colorTable[i%14]); |
||
| 29 | gr[i]->SetMarkerStyle(20+i); |
||
| 30 | sprintf(line,"%s;t(s);T(deg.)",fname); |
||
| 31 | gr[i]->SetTitle(line); |
||
| 32 | sprintf(line,"%s",SensorType[i]); |
||
| 33 | leg->AddEntry(gr[i],line,"l"); |
||
| 34 | |||
| 35 | } |
||
| 36 | |||
| 37 | while (fgets(line,ndim,fp)!=NULL) { |
||
| 38 | printf("%d***********\n",j++); |
||
| 39 | printf("***%s\n", line); |
||
| 40 | sscanf(line,"%ul%d%f",&t,&type,&temp0); |
||
| 41 | if(first){ |
||
| 42 | time0=t; |
||
| 43 | first=0; |
||
| 44 | } |
||
| 45 | printf("%ul\t%d\t%f\n",t,type,temp0); |
||
| 46 | if (type<3 && type>-1) gr[type]->SetPoint (gr[type]->GetN(), t-time0, temp0); |
||
| 47 | } |
||
| 48 | fclose(fp); |
||
| 49 | |||
| 50 | |||
| 51 | TCanvas *c1 = new TCanvas("c1","Merger temperature",200,10,1400,1000); |
||
| 52 | c1->SetFillColor(kWhite); |
||
| 53 | c1->SetGrid(); |
||
| 54 | |||
| 55 | //gr[0]->GetXaxis()->SetTimeDisplay(1); // The X axis is a time axis |
||
| 56 | //gr[0]->GetXaxis()->SetTimeFormat("%d.%m.%H:%M"); |
||
| 57 | gr[0]->GetYaxis()->SetLabelSize(0.02); |
||
| 58 | gr[0]->GetXaxis()->SetLabelSize(0.02); |
||
| 59 | gr[0]->Draw("AWL"); |
||
| 60 | gr[0]->GetYaxis()->SetRangeUser(0,80); |
||
| 61 | |||
| 62 | for (int j = 0; j < 3; j++) { |
||
| 63 | gr[j]->Draw("LSAME"); |
||
| 64 | } |
||
| 65 | leg->Draw(); |
||
| 66 | c1->Modified(); |
||
| 67 | c1->Update(); |
||
| 68 | char picname[1024]; |
||
| 69 | |||
| 70 | sprintf(picname,"%s.png",fname); |
||
| 71 | c1->SaveAs(picname); |
||
| 72 | |||
| 73 | return 0; |
||
| 74 | |||
| 75 | } |