ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/YiChenHelperCode/PlotThreeColumnFile.C
Revision: 1.1
Committed: Sun Aug 22 12:10:22 2010 UTC (14 years, 8 months ago) by chenyi
Content type: text/plain
Branch: MAIN
CVS Tags: HEAD
Log Message:
First version of various helper files

File Contents

# User Rev Content
1 chenyi 1.1 #include <iostream>
2     #include <fstream>
3     #include <vector>
4     using namespace std;
5    
6     #include "TFile.h"
7     #include "TGraphErrors.h"
8    
9     void PlotThreeColumnFile(char *filename, char *outputfilename)
10     {
11     ifstream in(filename);
12    
13     TFile out(outputfilename, "RECREATE");
14    
15     vector<double> xData;
16     vector<double> yData;
17     vector<double> errorData;
18    
19     while(in)
20     {
21     double xTemp = 0;
22     double yTemp = 0;
23     double errorTemp = 0;
24    
25     in >> xTemp >> yTemp >> errorTemp;
26    
27     xData.push_back(xTemp);
28     yData.push_back(yTemp);
29     errorData.push_back(errorTemp);
30     }
31    
32     double *xArray = new double[xData.size()];
33     double *yArray = new double[yData.size()];
34     double *errorArray = new double[errorData.size()];
35    
36     for(int i = 0; i < (int)xData.size(); i++)
37     {
38     xArray[i] = xData[i];
39     yArray[i] = yData[i];
40     errorArray[i] = errorData[i];
41     }
42    
43     TGraphErrors graph(xData.size(), xArray, yArray, 0, errorArray);
44     graph.Write();
45    
46     delete[] errorArray;
47     delete[] yArray;
48     delete[] xArray;
49    
50     out.Close();
51    
52     in.close();
53     }