Experiment class
The Experiment class is intended for use in the Jupyter notebook environment.
- class pymeasure.experiment.experiment.Experiment(title, procedure, analyse=<function Experiment.<lambda>>)
Bases:
object
Class which starts logging and creates/runs the results and worker processes.
procedure = Procedure() experiment = Experiment(title, procedure) experiment.start() experiment.plot_live('x', 'y', style='.-') for a multi-subplot graph: import pylab as pl ax1 = pl.subplot(121) experiment.plot('x','y',ax=ax1) ax2 = pl.subplot(122) experiment.plot('x','z',ax=ax2) experiment.plot_live()
- Variables
value – The value of the parameter
- Parameters
title – The experiment title
procedure – The procedure object
analyse – Post-analysis function, which takes a pandas dataframe as input and returns it with added (analysed) columns. The analysed results are accessible via experiment.data, as opposed to experiment.results.data for the ‘raw’ data.
_data_timeout – Time limit for how long live plotting should wait for datapoints.
- clear_plot()
Clear the figures and plot lists.
- property data
Data property which returns analysed data, if an analyse function is defined, otherwise returns the raw data.
- plot(*args, **kwargs)
Plot the results from the experiment.data pandas dataframe. Store the plots in a plots list attribute.
- plot_live(*args, **kwargs)
Live plotting loop for jupyter notebook, which automatically updates (an) in-line matplotlib graph(s). Will create a new plot as specified by input arguments, or will update (an) existing plot(s).
- start()
Start the worker
- update_line(ax, hl, xname, yname)
Update a line in a matplotlib graph with new data.
- update_plot()
Update the plots in the plots list with new data from the experiment.data pandas dataframe.
- wait_for_data()
Wait for the data attribute to fill with datapoints.
- pymeasure.experiment.experiment.create_filename(title)
Create a new filename according to the style defined in the config file. If no config is specified, create a temporary file.
- pymeasure.experiment.experiment.get_array(start, stop, step)
Returns a numpy array from start to stop
- pymeasure.experiment.experiment.get_array_steps(start, stop, numsteps)
Returns a numpy array from start to stop in numsteps
- pymeasure.experiment.experiment.get_array_zero(maxval, step)
Returns a numpy array from 0 to maxval to -maxval to 0