qiskit-experiments
qiskit-experiments copied to clipboard
Add an IQ plot for meas_level=1
What is the expected behavior?
When an experiment is run on measurement level 1 then there should be a plot of the IQ data in the figures.
There is already one in readout angle that we can move to a more generic location
Yes, I would move it and extend/refactor it. There is also an alternative implementation in the resonator spectroscopy PR: https://github.com/Qiskit/qiskit-experiments/blob/dfe314978558e16c320a568ef3d44da486a2fa00/qiskit_experiments/library/characterization/analysis/resonator_spectroscopy_analysis.py I think both can be improved. For instance the readout angle explicitly assumes two circuits.
We could have this plotting live in curve_analysis
which then adds IQ plots if the run_level
is set to 1 (@nkanazawa1989 thoughts?). Also, I think this plotting should be configurable so that it can show both single-shot and averaged IQ data, possibly on the same canvas.
This is not limited to curve analysis. For example you can add IQ plot generation code to this nested function. https://github.com/Qiskit/qiskit-experiments/blob/a0beb41ec0757429031e0e6e7a7855dcc72877cd/qiskit_experiments/framework/base_analysis.py#L162-L176 The question is how we can configure the plot; readout angle has two series and spectroscopy has a single series. Fortunately both require a single canvas but some experiment may want to draw IQ blobs in multiple canvas for different series. Likely we need to pass some config object.
Is this issue still relevant? From what I understand (correct me if I am wrong), the issue is only how many canvases are need. to plot into for a comfortable view of the user. We can take the 2 extreme cases where all series are in a single canvas, or each of the series in a different canvas.