from pylab import *
from math import *
import matplotlib
+from commoncode import getConfigParser, getConfigOption, getConfigIntOption, getConfigBoolOption
-print "%prog: version 2.2"
+print "plotprofile: version 2.3"
def main(argv=None):
if not argv:
usage = "usage: python %s infile outfile.png [--scale] [--max weightMax] [--ymin bottom] [--ymax top] [--subtractEvens]"
- parser = optparse.OptionParser(usage=usage)
- parser.add_option("--scale", action="store_true", dest="doScale")
- parser.add_option("--max", type="float", dest="weightMax")
- parser.add_option("--ymin", type="float", dest="ymin")
- parser.add_option("--ymax", type="float", dest="ymax")
- parser.add_option("--subtractEvens", action="store_true", dest="subtractEvens")
- parser.set_defaults(doScale=False, weightMax=-1, ymin=None, ymax=None, subtractEvens=False)
+ parser = makeParser(usage)
(options, args) = parser.parse_args(argv[1:])
if len(args) < 2:
plotprofile(infile, pngfilename, options.doScale, options.weightMax, options.ymin, options.ymax, options.subtractEvens)
+def makeParser(usage=""):
+ parser = optparse.OptionParser(usage=usage)
+ parser.add_option("--scale", action="store_true", dest="doScale")
+ parser.add_option("--max", type="float", dest="weightMax")
+ parser.add_option("--ymin", type="float", dest="ymin")
+ parser.add_option("--ymax", type="float", dest="ymax")
+ parser.add_option("--subtractEvens", action="store_true", dest="subtractEvens")
+
+ configParser = getConfigParser()
+ section = "plotprofile"
+ doScale = getConfigBoolOption(configParser, section, "doScale", False)
+ weightMax = getConfigIntOption(configParser, section, "weightMax", -1)
+ ymin = getConfigOption(configParser, section, "ymin", None)
+ ymax = getConfigOption(configParser, section, "ymax", None)
+ subtractEvens = getConfigBoolOption(configParser, section, "subtractEvens", False)
+
+ parser.set_defaults(doScale=doScale, weightMax=weightMax, ymin=ymin, ymax=ymax, subtractEvens=subtractEvens)
+
+ return parser
+
+
def plotprofile(inFileName, pngfilename, doScale=False, weightMax=-1, ymin=None, ymax=None, subtractEvens=False):
infile = open(inFileName)
limitYscale = False