---
title: Diagonal (latest version)
description: API reference for qiskit.circuit.library.Diagonal in the latest version of qiskit
source: https://eu-de.quantum.cloud.ibm.com/docs/en/api/qiskit/qiskit.circuit.library.Diagonal
---

# Diagonal

*class* `qiskit.circuit.library.Diagonal(diag)`

[GitHub](https://github.com/Qiskit/qiskit/tree/stable/2.5/qiskit/circuit/library/generalized_gates/diagonal.py#L34-L56)

Bases: [`QuantumCircuit`](/docs/api/qiskit/qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit")

Circuit implementing a diagonal transformation.

> **Deprecated since version 2.1**
>
> The class `qiskit.circuit.library.generalized_gates.diagonal.Diagonal` is deprecated as of Qiskit 2.1. It will be removed in Qiskit 3.0. Use DiagonalGate instead.

**Parameters**

**diag** (*Sequence\[*[*complex*](https://docs.python.org/3/library/functions.html#complex)*]*) – List of the $2^k$ diagonal entries (for a diagonal gate on $k$ qubits).

**Raises**

[**CircuitError**](/docs/api/qiskit/circuit#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") – if the list of the diagonal entries or the qubit list is in bad format; if the number of diagonal entries is not $2^k$, where $k$ denotes the number of qubits.

## Attributes

### name

Type: `str`

A human-readable name for the circuit.

**Example**

```python
from qiskit import QuantumCircuit

qc = QuantumCircuit(2, 2, name="my_circuit")
print(qc.name)
```

```text
my_circuit
```
