# HG changeset patch # User Jeff Hammel # Date 1426565643 25200 # Node ID 79d99216ba1709dd1c65b23a3935156db8eba1ce # Parent 63bf582841a3a52160402603889a431b03ececdd cleanup and remove image display diff -r 63bf582841a3 -r 79d99216ba17 numerics/plot.py --- a/numerics/plot.py Mon Mar 16 20:59:08 2015 -0700 +++ b/numerics/plot.py Mon Mar 16 21:14:03 2015 -0700 @@ -24,38 +24,12 @@ import sys import tempfile import time -from which import which -from StringIO import StringIO # module globals -__all__ = ['Displayer', 'Plot', 'PlotParser', 'read', 'main'] +__all__ = ['Plot', 'PlotParser', 'read', 'main'] string = (str, unicode) -class Displayer(object): - """image displayer""" - viewers = ('feh', 'qiv', 'sxiv') - - def __init__(self, viewers=None): - if viewers is None: - viewers = self.viewers - self.viewers = viewers - - def viewer(self): - """returns path to primary viewer""" - for viewer in self.viewers: - path = which(viewer) - if path: - return path - - def __call__(self, image): - """display an image and exit""" - viewer = self.viewer() - if viewer: - args = [viewer, image] - subprocess.check_output(args) - - class Plot(object): """plotting class""" def __init__(self, title=None, xlabel=None, ylabel=None): @@ -125,11 +99,11 @@ class PlotParser(argparse.ArgumentParser): """CLI option parser for the plotter""" + types = (float,) + def __init__(self, *args, **kwargs): kwargs.setdefault('description', __doc__) argparse.ArgumentParser.__init__(self, *args, **kwargs) - self.add_argument('--info', dest='info', - help="display info and exit") self.add_argument('input', type=argparse.FileType('r'), nargs='*', default=(sys.stdin,), @@ -158,6 +132,7 @@ parser = PlotParser() options = parser.parse_args(args) + # choose plotting function plot_fcn = plt.scatter if options.scatter else plt.plot # read data @@ -169,7 +144,7 @@ colors = iter(cm.rainbow(np.linspace(0, 1, n_col))) for data in all_data: - # plot it + # plot each data set if len(data) == 1: plot_fcn(*data, marker='.', color=next(colors)) else: