In the following example data is retrieved after a scan has been executed:
import PyTango, time, HasyUtils def main(): if not HasyUtils.isSardanaMonitorAlive(): print "SardanaMonitor is NOT alive" return d = PyTango.DeviceProxy( "p09/door/haso107d1.01") # # set the measurement group # d.runMacro( [ "change_mg", "-g", "mg_pynb", "-t", "d1_t01", "-c", "sig_gen,d1_c01"]) while d.state() != PyTango.DevState.ON: time.sleep(0.1) # # execute an ascan # d.runMacro( ["ascan", "exp_dmy01", "0", "1", "2", "0.1"]) while d.state() != PyTango.DevState.ON: time.sleep(0.1) # # fetch the data # hsh = HasyUtils.toSardanaMonitor( {'getData': True}) if hsh[ 'result'].upper() != 'DONE': print "no or bad reply from SardanaMonitor", hsh[ 'result'] return HasyUtils.dct_print( hsh) main() { u'getData': { u'D1_C01': { u'x': [0.0, 0.5, 1.0], u'y': [-0.02761096, 0.12093281502987421, 10.069768820644976], }, u'SIG_GEN': { u'x': [0.0, 0.5, 1.0], u'y': [1.5443633089821673, 399.48143087942117, 2.308103245799023e-05], }, u'symbols': { u'file_name_': u'tst_08901.fio', u'scan_cmd': u'ascan exp_dmy01 0.0 1.0 2 0.1', u'scan_date': u'Thu Dec 6 13:56:38 2018', u'scan_dir': u'/home/kracht/Misc/IVP/temp', u'scan_id': u'8901', }, }, u'result': u'done', }
Notice the returned symbols. The can be helpful when analysing the data.