def test_plot_state_histogram_multi_1(): pl.switch_backend('PDF') qubits = cirq.LineQubit.range(4) c = cirq.Circuit( cirq.X.on_each(*qubits[1:]), cirq.measure(*qubits), # One multi-qubit measurement ) r = cirq.sample(c, repetitions=5) values_plotted = visualize.plot_state_histogram(r) expected_values = [0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0] np.testing.assert_equal(values_plotted, expected_values)
def test_plot_state_histogram(): pl.switch_backend('PDF') simulator = cg.XmonSimulator() q0 = GridQubit(0, 0) q1 = GridQubit(1, 0) circuit = cirq.Circuit() circuit.append([cirq.X(q0), cirq.X(q1)]) circuit.append([cirq.measure(q0, key='q0'), cirq.measure(q1, key='q1')]) result = simulator.run(program=circuit, repetitions=5) values_plotted = visualize.plot_state_histogram(result) expected_values = [0., 0., 0., 5.] np.testing.assert_equal(values_plotted, expected_values)
def test_plot_state_histogram(): pl.switch_backend('PDF') simulator = cg.XmonSimulator() rot_w_gate = cg.ExpWGate(half_turns=1.) q0 = GridQubit(0, 0) q1 = GridQubit(1, 0) circuit = cirq.Circuit() circuit.append([rot_w_gate(q0), rot_w_gate(q1)]) circuit.append([cg.XmonMeasurementGate(key='q0')(q0), cg.XmonMeasurementGate(key='q1')(q1)]) results = simulator.run_sweep(program=circuit, repetitions=5) values_plotted = visualize.plot_state_histogram(results[0]) expected_values = [0., 0., 0., 5.] np.testing.assert_equal(values_plotted, expected_values)
def qonduit_visualization_metrics_plot_histogram(data): return interactive(lambda data: display(plot_state_histogram(data)), data=fixed(data))