Commit 4fc9912e authored by Zolnierczuk, Piotr's avatar Zolnierczuk, Piotr
Browse files

working on nseplot cmd line app

parent 85d7a80e
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -36,7 +36,7 @@ runtest:
	@PYTHONPATH=.  $(PYTHON) -m nose --verbosity=1 --exe ./test

pylint:
	@PYTHONPATH=. pylint --rcfile=.pylint.rc pysen scripts
	@PYTHONPATH=. pylint --rcfile=.pylint.rc pysen

clean: clean-ui clean-docs
	@-$(PYTHON) setup.py clean
+0 −0

File moved.

+17 −9
Original line number Diff line number Diff line
@@ -12,8 +12,10 @@ from pysen.config import DEFAULT_ACCELERATOR_POWER
from pysen.inout  import convert_to_hdf
from pysen.plot   import ( plot_echo, plot_atari, plot_map, plot_magnetic_fields,
                           plot_diffrun, plot_transmission )
from pysen.plot.cmdline import NsePlotApp

def action_default(filenames, **kwargs):
    "default action for echo, atari, etc"
    action  = kwargs.pop('action')
    tau     = kwargs.pop('tau')
    outdir  = kwargs.pop('outdir')
@@ -38,8 +40,9 @@ def action_default(filenames, **kwargs):
    return to_show

def action_diffrun(filenames, **kwargs):
    "action for diffrun"
    savefig = kwargs.pop('savefig')
    log = kwargs.pop('log')
    #log = kwargs.pop('log')
    _, axis = plt.subplots(figsize=(8,8))
    plot_diffrun(axis, filenames, **kwargs)
    if savefig:
@@ -49,10 +52,10 @@ def action_diffrun(filenames, **kwargs):
    return to_show

def action_transmission(filenames, **kwargs):
    "action for transmission"
    savefig       = kwargs.pop('savefig')
    spectrum_only = kwargs.pop('spectrum_only')
    log = kwargs.pop('log')

    #log = kwargs.pop('log')
    to_show = True
    ax1 = None
    if spectrum_only:
@@ -60,24 +63,23 @@ def action_transmission(filenames, **kwargs):
    else:
        _, (ax0, ax1) = plt.subplots(2,1, figsize=(8,6), sharex=True)
        #_, (ax0, ax1) = plt.subplots(2,1, figsize=(args.figwidth, args.figheight), sharex=True)

    try:
        plot_transmission(ax0, ax1, filenames, **kwargs)
    except (OSError,RuntimeError) as e:
        print(e)

    if savefig:
        plt.savefig(savefig)
    else:
        to_show = True

    return to_show


#def action_qtau(, **kwargs):



def arguments_selection(pars, pix=True, tof=True):
    """
    """
    """pixel, tof selection arguments"""
    if tof:
        pars.add_argument('--t1' , '-b',  dest='tbin1', type=int,
                          help='set min TOF bin (default=%(default)s)')
@@ -102,9 +104,10 @@ def main():
    description = "SNS NSE plotting tool"

    parser_top  = argparse.ArgumentParser(description=description)
    parser_top.set_defaults(loglevel=1, outdir='.')
    parser_top.add_argument('--version', '-V', action='version',
                            version='%(prog)s pysen={version}'.format(version=version(full=True)))
    subparsers  = parser_top.add_subparsers(dest='what', required=True, help='what to plot')
    subparsers  = parser_top.add_subparsers(dest='what', required=False, help='what to plot')

    # common arguments
    parser = argparse.ArgumentParser(add_help=False)
@@ -264,6 +267,11 @@ def main():
    log = setup_logger(args.loglevel)
    log.debug('program arguments %s', args)

    if not args.what:
        NsePlotApp().cmdloop()
        return
        

    plt.rcParams.update({'figure.max_open_warning': 0})
    if args.savefig:
        plt.switch_backend('Agg')
+10 −9
Original line number Diff line number Diff line
@@ -274,7 +274,6 @@ def plot_diffrun(axis, filenames, **kwargs):

    title  = 'Diffraction Run Plot'
    out    = None
    lw     = 1
    cmap   = cm.get_cmap('hsv')

    if output:
@@ -300,12 +299,12 @@ def plot_diffrun(axis, filenames, **kwargs):

        q = result[:, 0] #
        if noqerr:
            q0, dq0 = q[0::2], None
            q1, dq1 = q[1::2], None
            q0  = q[0::2]
            q1  = q[1::2]
            cnt = result[::, 2] # detector sum
        else:
            q0, dq0 = _get_q(q[0::2], wlen, t1, t2)
            q1, dq1 = _get_q(q[1::2], wlen, t1, t2)
            q0, _ = _get_q(q[0::2], wlen, t1, t2)
            q1, _ = _get_q(q[1::2], wlen, t1, t2)
            cnt = np.sum(det[:,0,t1:t2], axis=-1)

        # up count
@@ -337,8 +336,8 @@ def plot_diffrun(axis, filenames, **kwargs):
        eincoherent  = 3/2*ecdn[:ndat]

        qmean  = 0.5*(q0[:ndat]+q1[:ndat])

        def _make_plot(axis, data, **kwargs):
            ""
            kwargs.setdefault('ls', '--')
            kwargs.setdefault('lw', 1)
            kwargs.setdefault('color', acolor)
@@ -370,12 +369,14 @@ def plot_diffrun(axis, filenames, **kwargs):
        # ratios
        if 'flip_ratio' in selection:
            #fratio = np.where(fratio>1.0, fratio, 1.0/fratio)
            if axis1 is None: axis1 = axis.twinx()
            if axis1 is None:
                axis1 = axis.twinx()
            _make_plot(axis1, (qmean, fratio, eratio ), marker='o', lbl='FR')
        if 'coherent_ratio' in selection:
            cratio  = (2*fratio - 1)/3
            ecratio = (2*eratio)/3
            if axis1 is None: axis1 = axis.twinx()
            if axis1 is None:
                axis1 = axis.twinx()
            _make_plot(axis, (qmean, cratio, ecratio), marker='s', lbl='C/I')

    if axis0 is not None:
+1 −1
Original line number Diff line number Diff line
@@ -3,7 +3,7 @@ PySEN revision module
"""
import sys
__version__  = "0.72"
__release__  = "dev2"
__release__  = "dev3"
__date__     = "Aug 3, 2022"

def version(full=False):
Loading