def parse_args(xvar='laps', yvar='evidence'): ''' Returns Namespace of parsed arguments retrieved from command line ''' parser = argparse.ArgumentParser() parser.add_argument('dataName', type=str, default='AsteriskK8') parser.add_argument('jpath', type=str, default='demo*') parser.add_argument('--xvar', type=str, default=xvar, choices=list(LabelMap.keys()), help="name of x axis variable to plot.") parser.add_argument('--yvar', type=str, default=yvar, #choices=LabelMap.keys(), help="name of y axis variable to plot.") helpMsg = "ids of trials/runs to plot from given job." + \ " Example: '4' or '1,2,3' or '2-6'." parser.add_argument( '--taskids', type=str, default=None, help=helpMsg) parser.add_argument( '--savefilename', type=str, default=None, help="location where to save figure (absolute path directory)") args, unkList = parser.parse_known_args() argDict = BNPYArgParser.arglist_to_kwargs(unkList, doConvertFromStr=False) argDict.update(args.__dict__) argDict['jpathPattern'] = os.path.join(os.environ['BNPYOUTDIR'], args.dataName, args.jpath) del argDict['dataName'] del argDict['jpath'] return argDict
def parse_args(): ''' Returns Namespace of parsed arguments retrieved from command line ''' parser = argparse.ArgumentParser() parser.add_argument('dataName', type=str, default='AsteriskK8') parser.add_argument('jpath', type=str, default='demo*') helpMsg = "ids of trials/runs to plot from given job." + \ " Example: '4' or '1,2,3' or '2-6'." parser.add_argument( '--taskids', type=str, default=None, help=helpMsg) parser.add_argument( '--savefilename', type=str, default=None, help="location where to save figure (absolute path directory)") parser.add_argument('--fileSuffix', type=str, default='PredLik.mat') args, unkList = parser.parse_known_args() argDict = BNPYArgParser.arglist_to_kwargs(unkList) argDict.update(args.__dict__) argDict['jpathPattern'] = os.path.join(os.environ['BNPYOUTDIR'], args.dataName, args.jpath) del argDict['dataName'] del argDict['jpath'] return argDict
def parse_args(**kwargs): ''' Returns Namespace of parsed arguments retrieved from command line ''' parser = argparse.ArgumentParser() parser.add_argument('dataName', type=str, default='AsteriskK8') parser.add_argument('jpathPattern', type=str, default='demo*') parser.add_argument('--xvar', type=str, default=None, help="name of x axis variable to plot.") parser.add_argument('--yvar', type=str, default='evidence', choices=list(LabelMap.keys()), help="name of y axis variable to plot.") parser.add_argument('--lvar', type=str, default=None, help="quantity that varies across lines") parser.add_argument('--pvar', type=str, default=None, help="quantity that varies across subplots") parser.add_argument('--taskids', type=str, default='all', help="specify which task to plot (all, .best, .worst, etc)") parser.add_argument( '--savefilename', type=str, default=None, help="location where to save figure (absolute path directory)") args, unkList = parser.parse_known_args() argDict = BNPYArgParser.arglist_to_kwargs(unkList) argDict.update(args.__dict__) argDict.update(kwargs) argDict['jpathPattern'] = os.path.join(os.environ['BNPYOUTDIR'], args.dataName, args.jpathPattern) del argDict['dataName'] for key in argDict: if key.endswith('vals'): if not isinstance(argDict[key], list): argDict[key] = argDict[key].split(',') return argDict
legNames = ['%s=%s' % (plotkey, x) for x in RangeMap[plotkey]] # Build list of final jpaths in order of decided legend keepListFinal = list() for x in RangeMap[plotkey]: for jID, jdict in enumerate(keepListD): if jdict[plotkey] == x: keepListFinal.append(keepListP[jID]) else: keepListFinal = keepListP[:1] legNames = [None] if verbose: print('\nLegend entries for selected jobs (auto-selected)') for name in legNames: print(name) return keepListFinal, legNames if __name__ == '__main__': import argparse parser = argparse.ArgumentParser() parser.add_argument('dataName', default='AsteriskK8') parser.add_argument('jobName', default='bm') args, unkList = parser.parse_known_args() reqDict = BNPYArgParser.arglist_to_kwargs(unkList, doConvertFromStr=False) jpath = os.path.join(os.environ['BNPYOUTDIR'], args.dataName, args.jobName) keepJobs, legNames = filterJobs(jpath, verbose=1, **reqDict)