qiskit.visualization.pass_manager_drawer
pass_manager_drawer(pass_manager, filename=None, style=None, raw=False)
Draws the pass manager.
This function needs pydot <https://github.com/erocarrera/pydot>, which in turn needs Graphviz <https://www.graphviz.org/>` to be installed.
Parameters
- pass_manager (PassManager) – the pass manager to be drawn
- filename (str) – file path to save image to
- style (dict or OrderedDict) – keys are the pass classes and the values are the colors to make them. An example can be seen in the DEFAULT_STYLE. An ordered dict can be used to ensure a priority coloring when pass falls into multiple categories. Any values not included in the provided dict will be filled in from the default dict
- raw (Bool) – True if you want to save the raw Dot output not an image. The default is False.
Returns
an in-memory representation of the pass manager. Or None if no image was generated or PIL is not installed.
Return type
PIL.Image or None
Raises
- MissingOptionalLibraryError – when nxpd or pydot not installed.
- VisualizationError – If raw=True and filename=None.
Example
%matplotlib inline
from qiskit import QuantumCircuit
from qiskit.compiler import transpile
from qiskit.transpiler import PassManager
from qiskit.visualization import pass_manager_drawer
from qiskit.transpiler.passes import Unroller
circ = QuantumCircuit(3)
circ.ccx(0, 1, 2)
circ.draw()
pass_ = Unroller(['u1', 'u2', 'u3', 'cx'])
pm = PassManager(pass_)
new_circ = pm.run(circ)
new_circ.draw(output='mpl')
pass_manager_drawer(pm, "passmanager.jpg")
Was this page helpful?
Report a bug or request content on GitHub.