64 lines
2.4 KiB
Plaintext
64 lines
2.4 KiB
Plaintext
---
|
||
title: dag_drawer
|
||
description: API reference for qiskit.visualization.dag_drawer
|
||
in_page_toc_min_heading_level: 1
|
||
python_api_type: function
|
||
python_api_name: qiskit.visualization.dag_drawer
|
||
---
|
||
|
||
# qiskit.visualization.dag\_drawer
|
||
|
||
<Function id="qiskit.visualization.dag_drawer" isDedicatedPage={true} github="https://github.com/qiskit/qiskit/tree/stable/0.17/qiskit/visualization/dag_visualization.py" signature="dag_drawer(dag, scale=0.7, filename=None, style='color')">
|
||
Plot the directed acyclic graph (dag) to represent operation dependencies in a quantum circuit.
|
||
|
||
Note this function leverages [pydot](https://github.com/erocarrera/pydot) to generate the graph, which means that having [Graphviz](https://www.graphviz.org/) installed on your system is required for this to work.
|
||
|
||
The current release of Graphviz can be downloaded here: \<[https://graphviz.gitlab.io/download/](https://graphviz.gitlab.io/download/)>. Download the version of the software that matches your environment and follow the instructions to install Graph Visualization Software (Graphviz) on your operating system.
|
||
|
||
**Parameters**
|
||
|
||
* **dag** ([*DAGCircuit*](qiskit.dagcircuit.DAGCircuit "qiskit.dagcircuit.DAGCircuit")) – The dag to draw.
|
||
* **scale** (*float*) – scaling factor
|
||
* **filename** (*str*) – file path to save image to (format inferred from name)
|
||
* **style** (*str*) – ‘plain’: B\&W graph ‘color’ (default): color input/output/op nodes
|
||
|
||
**Returns**
|
||
|
||
**if in Jupyter notebook and not saving to file,**
|
||
|
||
otherwise None.
|
||
|
||
**Return type**
|
||
|
||
PIL.Image
|
||
|
||
**Raises**
|
||
|
||
* [**VisualizationError**](qiskit.visualization.VisualizationError "qiskit.visualization.VisualizationError") – when style is not recognized.
|
||
* **ImportError** – when pydot or pillow are not installed.
|
||
|
||
**Example**
|
||
|
||
```python
|
||
%matplotlib inline
|
||
from qiskit import QuantumRegister, ClassicalRegister, QuantumCircuit
|
||
from qiskit.dagcircuit import DAGCircuit
|
||
from qiskit.converters import circuit_to_dag
|
||
from qiskit.visualization import dag_drawer
|
||
|
||
q = QuantumRegister(3, 'q')
|
||
c = ClassicalRegister(3, 'c')
|
||
circ = QuantumCircuit(q, c)
|
||
circ.h(q[0])
|
||
circ.cx(q[0], q[1])
|
||
circ.measure(q[0], c[0])
|
||
circ.rz(0.5, q[1]).c_if(c, 2)
|
||
|
||
dag = circuit_to_dag(circ)
|
||
dag_drawer(dag)
|
||
```
|
||
|
||

|
||
</Function>
|
||
|