blissoda.exafs.plotter.ExafsPlotter#

class blissoda.exafs.plotter.ExafsPlotter(number_of_scans=0, queue='celery')[source]#

Bases: WithFlintAccess

Manage EXAFS plots in Flint based on Ewoks workflow results.

Parameters:
  • number_of_scans (int)

  • queue (str)

clear()[source]#

Remove all scan curves in all plots

Return type:

None

create_scan_id(filename, scan_number)[source]#
Parameters:
  • filename (str)

  • scan_number (int)

Return type:

str

ensure_scan_infos(filename, scan_number)[source]#
Parameters:
  • filename (str)

  • scan_number (int)

Return type:

Tuple[str, ScanInfo]

execute_and_plot(scan_id, plot_parameters, split_parameters, reprocess=False)[source]#
Parameters:
Return type:

None

property number_of_scans#

Maximum number of scans to be plotted

purge_scan_infos(keep_scan_ids=())[source]#

Remove cache from scans that have no enabled sub-scans or not processing results.

Parameters:

keep_scan_ids (Sequence[str])

Return type:

None

refresh()[source]#

Refresh all plots with the current processed data

Return type:

None

remove_scan(legend)[source]#

Disable subscan and remove from Flint.

Parameters:

legend (str)

Return type:

None

reset_flint()#
Return type:

None

property scan_ids: List[str]#
sync_plots()[source]#

Synchronize workflow results in cache with plots in Flint.

sync_results(scan_info)[source]#

Update workflow results in cache with processing results. Blocks when the scan has a pending future.

Parameters:

scan_info (ScanInfo)

Return type:

None