# About how to use the save_density_matrix function in qiskit to visualize the density map of some qubits

https://fr.answacode.com/quantumcomputing/20894/enregistrement-du-vecteur-detat-sur-plusieurs-emplacements-dans-un-circuit-quant The above is a rare reference document about save_density_matrix, but it failed when I ported the code to my own project, and an error occurred.  Can you provide a complete case of this function. My idea is to randomly sample 3 of the 20 qubits for visualization.

you can do it like this, for the error, you might have have duplicate name in save instruction. you probably have two instruction output the same label name 'final_rho'

####import needed function####
from qiskit import QuantumCircuit, Aer,execute
from qiskit.visualization import plot_state_city
from qiskit.providers.aer.library import SaveDensityMatrix
from random import seed,randint,sample
seed(1)

####example circuit#####
qc = QuantumCircuit(4)
qc.h(0)
for i in range(qc.num_qubits-1):
qc.cx(i, i+1)
display(qc.draw())

#sample selected number
sample_selected = sample([i for i in range(qc.num_qubits)],3) # selected random separate qubit
#print(sample_selected)

#random group of number
seleted_num = randint(0,qc.num_qubits-3) # random seleted group of qubit
select_group = [seleted_num+i for i in range(3)]
#print(select_group)

#qc.save_density_matrix(sample_selected,label=f'final_rho')# old way
qc.append(SaveDensityMatrix(3, label=f'final_rho'),sample_selected)# new way

####run####
aer_sim = Aer.get_backend('aer_simulator')
result = aer_sim.run(qc,shots=1024).result()

####Extract density matrix snapshot from result ####
density_matrix = result.data()['final_rho']# extract label
#print(density_matrix)

####visualize it####
plot_state_city(density_matrix, color=['midnightblue', 'midnightblue'],
title="New State City")
$$$$
`
• I tried your code and it works. As a newcomer to QISKIT, I can ask you further, what parameters can be changed to use your template? Jun 18 at 2:16
• @R-XZhao you can try to understand each step, so you know what is the thing you need, and modify.
– poig
Jun 18 at 2:23
• @R-XZhao and look at the qiskit documentation
– poig
Jun 18 at 2:39
• I read the official 0.36.2 documentation, unfortunately there are too few reference codes Jun 18 at 2:42
• @R-XZhao you need to learn how to look at it, and test it out but you can search example on tutorial, google or github.
– poig
Jun 18 at 2:47