0

系统信息

Qiskit version: 0.17.0
Python version: 3.7.7
Operating system: Windows 10 home x64

当前的行为是什么?

我在 Anaconda 上使用 spyder 4.1.1,任何时候我尝试绘制数据都不会显示。代码运行没有错误,但它自己的情节没有出现在任何地方。

重现问题的步骤

运行下面列出的来自 IBMQ 网站的代码:

import numpy 
import qiskit as qc 
from qiskit import QuantumCircuit, execute, Aer
import matplotlib
from qiskit.visualization import plot_state_city

circ = qc.QuantumCircuit(3)

circ.h(0)
circ.cx(0,1)
circ.cx(0,2)
print(circ.draw())
backend = Aer.get_backend('statevector_simulator')
job = execute(circ, backend)
result = job.result()
outputstate = result.get_statevector(circ, decimals=3)
print(outputstate)
plot_state_city(outputstate)

预期的行为是什么?

让情节状态城市情节出现在控制台或其他地方

建议的解决方案

我尝试同时使用 matplotlib.pylot.show() 和 matplotlib.pyplot.draw()

4

5 回答 5

1

尝试按照此处“在单独窗口中绘制 Spyder”下的说明进行操作。然后你也可以调用circ.draw(output='mpl')在窗口中绘制电路。希望这可以帮助。

于 2020-06-11T07:15:45.347 回答
0

要打印您的电路,您必须输入 print(电路名称),因此在您的案例中输入 print(circ)。

于 2021-02-19T05:40:34.610 回答
0

第一:我改变了 spyder 的偏好:工具 ==> 偏好 ==> ipython 控制台 ==> 图形 ==> 图形后端 ==> 自动。

第二:然后我尝试了上面答案中提到的选项,稍作修改是通过仅在“draw”一词之后的括号之间写“mpl”来使代码成为circ.draw('mpl'),并且一切正常。

于 2021-07-24T13:39:21.473 回答
0

spyder这可能是因为默认情况下不显示这些图。如果您在 Jupyter Notebook 中运行此代码,绘图应该会显示得很好!

于 2020-05-03T11:12:25.653 回答
0

我一般使用 pycharm ide 来运行 qiskit 代码。我认为,spyder 也应该同样工作。请修改您的代码如下。我希望,它会为你工作。

import numpy 
import qiskit as qc 
from qiskit import QuantumCircuit, execute, Aer
import matplotlib
from qiskit.visualization import plot_state_city
import matplotlib.pyplot as plt

circ = qc.QuantumCircuit(3)

circ.h(0)
circ.cx(0,1)
circ.cx(0,2)
circ.draw(output='mpl')

backend = Aer.get_backend('statevector_simulator')
job = execute(circ, backend)
result = job.result()
outputstate = result.get_statevector(circ, decimals=3)
print(outputstate)
plot_state_city(outputstate)

plt.show() 
于 2021-06-18T17:20:17.013 回答