diff --git a/btt/bno_plot.py b/btt/bno_plot.py index aa92480..d84fd25 100644 --- a/btt/bno_plot.py +++ b/btt/bno_plot.py @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#!/usr/bin/python3 # # btt blkno plotting interface # @@ -38,6 +38,8 @@ automatically push the keys under the graph. To exit the plotter, enter 'quit' or ^D at the 'gnuplot> ' prompt. """ +from __future__ import absolute_import +from __future__ import print_function import getopt, glob, os, sys, tempfile verbose = 0 @@ -60,14 +62,14 @@ def parse_args(in_args): try: (opts, args) = getopt.getopt(in_args, s_opts, l_opts) - except getopt.error, msg: - print >>sys.stderr, msg - print >>sys.stderr, __doc__ + except getopt.error as msg: + print(msg, file=sys.stderr) + print(__doc__, file=sys.stderr) sys.exit(1) for (o, a) in opts: if o in ('-h', '--help'): - print __doc__ + print(__doc__) sys.exit(0) elif o in ('-v', '--verbose'): verbose += 1 @@ -84,10 +86,10 @@ if __name__ == '__main__': (bnos, keys_below) = parse_args(sys.argv[1:]) if verbose: - print 'Using files:', - for bno in bnos: print bno, - if keys_below: print '\nKeys are to be placed below graph' - else: print '' + print('Using files:', end=' ') + for bno in bnos: print(bno, end=' ') + if keys_below: print('\nKeys are to be placed below graph') + else: print('') tmpdir = tempfile.mktemp() os.mkdir(tmpdir) @@ -99,7 +101,7 @@ if __name__ == '__main__': fo = open(t, 'w') for line in open(f, 'r'): fld = line.split(None) - print >>fo, fld[0], fld[1], int(fld[2])-int(fld[1]) + print(fld[0], fld[1], int(fld[2])-int(fld[1]), file=fo) fo.close() t = t[t.rfind('/')+1:] @@ -107,16 +109,16 @@ if __name__ == '__main__': else: plot_cmd = "%s,'%s'" % (plot_cmd, t) fo = open('%s/plot.cmds' % tmpdir, 'w') - print >>fo, cmds - if len(bnos) > 10 or keys_below: print >>fo, 'set key below' - print >>fo, plot_cmd + print(cmds, file=fo) + if len(bnos) > 10 or keys_below: print('set key below', file=fo) + print(plot_cmd, file=fo) fo.close() pid = os.fork() if pid == 0: cmd = 'gnuplot %s/plot.cmds -' % tmpdir - if verbose: print 'Executing %s' % cmd + if verbose: print('Executing %s' % cmd) os.chdir(tmpdir) os.system(cmd) diff --git a/btt/btt_plot.py b/btt/btt_plot.py index b81dad5..a9a534b 100755 --- a/btt/btt_plot.py +++ b/btt/btt_plot.py @@ -1,4 +1,4 @@ -#! /usr/bin/env python +#!/usr/bin/python3 # # btt_plot.py: Generate matplotlib plots for BTT generate data files # @@ -55,6 +55,10 @@ Arguments: but the -o (--output) and -T (--title) options will be ignored. """ +from __future__ import absolute_import +from __future__ import print_function +import six +from six.moves import range __author__ = 'Alan D. Brunelle ' #------------------------------------------------------------------------------ @@ -82,7 +86,7 @@ get_base = lambda file: file[file.find('_')+1:file.rfind('_')] def fatal(msg): """Generate fatal error message and exit""" - print >>sys.stderr, 'FATAL: %s' % msg + print('FATAL: %s' % msg, file=sys.stderr) sys.exit(1) #------------------------------------------------------------------------------ @@ -163,7 +167,7 @@ def get_data(files): if not os.path.exists(file): fatal('%s not found' % file) elif verbose: - print 'Processing %s' % file + print('Processing %s' % file) xs = [] ys = [] @@ -214,8 +218,8 @@ def parse_args(args): try: (opts, args) = getopt.getopt(args[1:], s_opts, l_opts) - except getopt.error, msg: - print >>sys.stderr, msg + except getopt.error as msg: + print(msg, file=sys.stderr) fatal(__doc__) for (o, a) in opts: @@ -293,15 +297,15 @@ def generate_output(type, db): def color(idx, style): """Returns a color/symbol type based upon the index passed.""" - colors = [ 'b', 'g', 'r', 'c', 'm', 'y', 'k' ] + colors = [ 'b', 'g', 'r', 'c', 'm', 'y', 'k' ] l_styles = [ '-', ':', '--', '-.' ] m_styles = [ 'o', '+', '.', ',', 's', 'v', 'x', '<', '>' ] color = colors[idx % len(colors)] if style == 'line': - style = l_styles[(idx / len(l_styles)) % len(l_styles)] + style = l_styles[int((idx / len(l_styles)) % len(l_styles))] elif style == 'marker': - style = m_styles[(idx / len(m_styles)) % len(m_styles)] + style = m_styles[int((idx / len(m_styles)) % len(m_styles))] return '%s%s' % (color, style) @@ -314,7 +318,7 @@ def generate_output(type, db): ofile = '%s.png' % type if verbose: - print 'Generating plot into %s' % ofile + print('Generating plot into %s' % ofile) fig = plt.figure(figsize=plot_size) ax = fig.add_subplot(111) @@ -329,7 +333,7 @@ def generate_output(type, db): legends = None keys = [] - for file in db.iterkeys(): + for file in six.iterkeys(db): if not file in ['min_x', 'max_x', 'min_y', 'max_y']: keys.append(file)