Skip to main contentIBM Quantum Documentation
This page is from an old version of Qiskit SDK. Go to the latest version.

qiskit.visualization.plot_bloch_multivector

plot_bloch_multivector(state, title='', figsize=None, *, rho=None, reverse_bits=False, filename=None)

GitHub

Plot a Bloch sphere for each qubit.

Each component (x,y,z)(x,y,z) of the Bloch sphere labeled as ‘qubit i’ represents the expected value of the corresponding Pauli operator acting only on that qubit, that is, the expected value of IN1Ii+1PiIi1I0I_{N-1} \otimes\dotsb\otimes I_{i+1}\otimes P_i \otimes I_{i-1}\otimes\dotsb\otimes I_0, where NN is the number of qubits, P{X,Y,Z}P\in \{X,Y,Z\} and II is the identity operator.

Parameters

  • state (Statevector orDensityMatrix or ndarray) – an N-qubit quantum state.
  • title (str) – a string that represents the plot title
  • figsize (tuple) – Has no effect, here for compatibility only.
  • reverse_bits (bool) – If True, plots qubits following Qiskit’s convention [Default:False].

Returns

A matplotlib figure instance.

Return type

matplotlib.Figure

Raises

  • MissingOptionalLibraryError – Requires matplotlib.
  • VisualizationError – if input is not a valid N-qubit state.

Examples

from qiskit import QuantumCircuit
from qiskit.quantum_info import Statevector
from qiskit.visualization import plot_bloch_multivector
 
qc = QuantumCircuit(2)
qc.h(0)
qc.x(1)
 
state = Statevector(qc)
plot_bloch_multivector(state)

(Source code, png, hires.png, pdf)

../_images/qiskit-visualization-plot_bloch_multivector-1.png
from qiskit import QuantumCircuit
from qiskit.quantum_info import Statevector
from qiskit.visualization import plot_bloch_multivector
 
qc = QuantumCircuit(2)
qc.h(0)
qc.x(1)
 
# You can reverse the order of the qubits.
 
from qiskit.quantum_info import DensityMatrix
 
qc = QuantumCircuit(2)
qc.h([0, 1])
qc.t(1)
qc.s(0)
qc.cx(0,1)
 
matrix = DensityMatrix(qc)
plot_bloch_multivector(matrix, title='My Bloch Spheres', reverse_bits=True)

(Source code, png, hires.png, pdf)

../_images/qiskit-visualization-plot_bloch_multivector-2.png
Was this page helpful?
Report a bug or request content on GitHub.