Skip to main content
IBM Quantum Platform

回路のタイミングを可視化する

  • このページ上のコードは、以下の要件に基づいて開発されました。 これらのバージョンまたはそれ以降のバージョンを使用することを推奨します。

    qiskit[all]~=2.5.1
    

回路に関する指示を可視化するだけでなく、Qiskit の timeline_drawer メソッドを使用して回路のスケジューリングを可視化することもできます。 この可視化により、例えば、量子ビットのアイドル時間を素早く特定するのに役立つ可能性があります。 ただし、この手法では、動的な回路については正確な結果が得られません。 動的な回線スケジューリングを可視化するには、「 回線タイミングの可視化」 ガイドに記載されている メソッド draw_circuit_schedule_timing を使用してください。


スケジュールされた回路プログラムを視覚化するには、制御引数のセットでこの関数を呼び出すことができる。 出力画像の外観のほとんどはスタイルシートで変更できるが、これは必須ではない。

デフォルトのスタイルシートで描画する

from qiskit import QuantumCircuit
from qiskit.visualization.timeline import draw
from qiskit.providers.fake_provider import GenericBackendV2
from qiskit.transpiler import generate_preset_pass_manager

qc = QuantumCircuit(2)
qc.h(0)
qc.cx(0, 1)

backend = GenericBackendV2(5)

pm = generate_preset_pass_manager(backend=backend, optimization_level=1)
isa_circuit = pm.run(qc)

draw(isa_circuit, target=backend.target)

Output:

Output of the previous code cell

プログラムのデバッグに適したスタイルシートで描画する

from qiskit import QuantumCircuit
from qiskit.visualization.timeline import draw, IQXDebugging
from qiskit.providers.fake_provider import GenericBackendV2
from qiskit.transpiler import generate_preset_pass_manager

qc = QuantumCircuit(2)
qc.h(0)
qc.cx(0, 1)
qc.measure_all()

backend = GenericBackendV2(5)
pm = generate_preset_pass_manager(backend=backend, optimization_level=1)
isa_circuit = pm.run(qc)
draw(isa_circuit, style=IQXDebugging(), target=backend.target)

Output:

Output of the previous code cell

カスタムジェネレーターやカスタムレイアウト関数を作成し、既存のスタイルシートをカスタム関数で更新することができます。 こうすることで、予定されているサーキットドロワーのコードベースを変更することなく、出力画像の外観のほとんどをコントロールすることができる。 詳細は timeline_drawer APIリファレンスを参照のこと。


次のステップ

推奨事項
このページは役に立ちましたか?
バグや誤字の報告、またはコンテンツの要求はGitHubで行ってください。