---
title: plot_state_hinton (latest version)
description: API reference for qiskit.visualization.plot_state_hinton in the latest version of qiskit
source: https://quantum.cloud.ibm.com/docs/en/api/qiskit/qiskit.visualization.plot_state_hinton
---

# qiskit.visualization.plot\_state\_hinton

`qiskit.visualization.plot_state_hinton(state, title='', figsize=None, ax_real=None, ax_imag=None, *, filename=None)`

[GitHub](https://github.com/Qiskit/qiskit/tree/stable/2.5/qiskit/visualization/state_visualization.py#L37-L185)

Plot a hinton diagram for the density matrix of a quantum state.

The hinton diagram represents the values of a matrix using squares, whose size indicate the magnitude of their corresponding value and their color, its sign. A white square means the value is positive and a black one means negative.

**Parameters**

- **state** ([*Statevector*](/docs/api/qiskit/qiskit.quantum_info.Statevector "qiskit.quantum_info.Statevector")  *or*[*DensityMatrix*](/docs/api/qiskit/qiskit.quantum_info.DensityMatrix "qiskit.quantum_info.DensityMatrix") *or ndarray*) – An N-qubit quantum state.
- **title** ([*str*](https://docs.python.org/3/library/stdtypes.html#str)) – a string that represents the plot title
- **figsize** ([*tuple*](https://docs.python.org/3/library/stdtypes.html#tuple)) – Figure size in inches.
- **filename** ([*str*](https://docs.python.org/3/library/stdtypes.html#str) *| None*) – The optional file path to save image to. If not specified no file is created for the visualization. If this is set the return from this function will be `None`.
- **ax\_real** ([*matplotlib.axes.Axes*](https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.html#matplotlib.axes.Axes "(in Matplotlib v3.11.0)")) – An optional Axes object to be used for the visualization output. If none is specified a new matplotlib Figure will be created and used. If this is specified without an ax\_imag only the real component plot will be generated. Additionally, if specified there will be no returned Figure since it is redundant.
- **ax\_imag** ([*matplotlib.axes.Axes*](https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.html#matplotlib.axes.Axes "(in Matplotlib v3.11.0)")) – An optional Axes object to be used for the visualization output. If none is specified a new matplotlib Figure will be created and used. If this is specified without an ax\_imag only the real component plot will be generated. Additionally, if specified there will be no returned Figure since it is redundant.

**Returns**

The matplotlib.Figure of the visualization if neither ax\_real or ax\_imag is set.

**Return type**

[`matplotlib.figure.Figure`](https://matplotlib.org/stable/api/_as_gen/matplotlib.figure.Figure.html#matplotlib.figure.Figure "(in Matplotlib v3.11.0)")

**Raises**

- [**MissingOptionalLibraryError**](/docs/api/qiskit/exceptions#qiskit.exceptions.MissingOptionalLibraryError "qiskit.exceptions.MissingOptionalLibraryError") – Requires matplotlib.
- [**VisualizationError**](/docs/api/qiskit/visualization#qiskit.visualization.VisualizationError "qiskit.visualization.VisualizationError") – Input is not a valid N-qubit state.

**Examples**

```python
import numpy as np
from qiskit import QuantumCircuit
from qiskit.quantum_info import DensityMatrix
from qiskit.visualization import plot_state_hinton

qc = QuantumCircuit(2)
qc.h([0, 1])
qc.cz(0,1)
qc.ry(np.pi/3 , 0)
qc.rx(np.pi/5, 1)

state = DensityMatrix(qc)
plot_state_hinton(state, title="New Hinton Plot")
```

![Output from the previous code.](https://quantum.cloud.ibm.com/docs/images/api/qiskit/qiskit-visualization-plot_state_hinton-1.avif)
