Dashboard Core — Circuit Diagram¶
Native circuit-diagram renderer — pure matplotlib, never a Qiskit
QuantumCircuit. Replaces qiskit.circuit.draw(output='mpl') for
exactly the gate set dense_evolution actually supports, so Composer
never depends on Qiskit just to draw a picture.
circuit_diagram ¶
Native circuit-diagram renderer -- pure matplotlib, never a Qiskit QuantumCircuit. Replaces qiskit's circuit.draw(output='mpl') for exactly the reason documented in dashboard_core/engine.py's module docstring: qiskit.circuit.QuantumCircuit.init itself segfaults (SIGSEGV) on macOS CI runners, on the simplest possible call (QuantumCircuit(3) alone, no QASM, no methods called on it) -- see tests/integration/test_interop.py:: TestQiskitInterop for the full reproduction story. There is no way to keep using Qiskit's own drawer without constructing that object, so this module draws directly from the same (name, *qubits[, param]) gate-tuple format every other dense_evolution entry point already uses.
Gate vocabulary mirrors dashboard_core/engine.py's dispatch tables exactly (_ONE_QUBIT_STATIC / _ONE_QUBIT_PARAM / _TWO_QUBIT_STATIC / _TWO_QUBIT_PARAM / _THREE_QUBIT_STATIC) -- the same gate set QASMParser can ever hand back, so nothing here can see a name it doesn't recognize.
draw_native_circuit_diagram ¶
Draws a circuit diagram figure directly from dense_evolution gate tuples -- no Qiskit QuantumCircuit ever constructed. Qubit 0 is drawn at the top, increasing downward, matching Qiskit's own drawer convention so this is a drop-in replacement for dashboard_core.visuals.draw_circuit_figure's panel.
Source code in tools/dashboard_core/circuit_diagram.py
See also: dashboard_core.visuals, which
aggregates this with state_visuals.