Repository: Qiskit/qiskit

Issue:
visualize_transition() uses angle in degrees rather than radians
<!-- ⚠️ If you do not respect this template, your issue will be closed -->
<!-- ⚠️ Make sure to browse the opened and closed issues -->

### Information

- **Qiskit Terra version**: 0.15.2
- **Qiskit version**: 0.21.0
- **Python version**: 3.7.6
- **Operating system**: Mac OSX

### What is the current behavior?
In Qiskit, standard rotation gates (such as 'rx', 'ry', 'rz') take the angle `theta` in radians rather than in degrees. However, the visualization `visualize_transition()` seems to assume that angles should be specified in degrees.

### Steps to reproduce the problem
For example the following code:
```
qc = QuantumCircuit(1)
qc.rx(np.pi,0)
visualize_transition(qc, trace=True)
```
Results in the following plot:
![image](https://user-images.githubusercontent.com/65074936/93717977-11e9b480-fb47-11ea-957d-6b0e2f7d9281.png)



Alternatively, the code below, where the angle is in degrees, gives the expected rotation.
```
qc = QuantumCircuit(1)
qc.rx(180,0)
visualize_transition(qc, trace=True)
```
![image](https://user-images.githubusercontent.com/65074936/93717990-2cbc2900-fb47-11ea-9f82-6c23a34c7417.png)


### What is the expected behavior?
Since the standard in Qiskit is to use radians and not degrees, the first example should result in the following plot:
![image](https://user-images.githubusercontent.com/65074936/93718064-a05e3600-fb47-11ea-8999-5af22be5faf9.png)


### Suggested solutions
There are two possible solutions:
1. Allow the user to specify if angle of the rotation rate was given in radians or degrees. This might not be a desired solution though because, even though the visualization will be correct, the gate operation when used within a circuit for other purposes won't.
2. In the code for the `visualize_transition` function in `qiskit.visualization.transition_visualization`, the line highlighted below (which changes the angle from degrees to radians) should be removed, and the variable `rad` should be replaced with `theta` in the subsequent lines of code:


![image](https://user-images.githubusercontent.com/65074936/93718141-1f536e80-fb48-11ea-98a5-983db75036b5.png)
 



Discussion:
Hi! Can I work on this issue?

I'm interested! Can I work on this?
Hey! Can I work on this issue
@diemilio  I guess I have solved this issue.

Resolving patch:
diff --git a/qiskit/visualization/transition_visualization.py b/qiskit/visualization/transition_visualization.py
--- a/qiskit/visualization/transition_visualization.py
+++ b/qiskit/visualization/transition_visualization.py
@@ -209,18 +209,17 @@ def visualize_transition(circuit,
             list_of_circuit_gates.append(gates[gate[0].name])
         else:
             theta = gate[0].params[0]
-            rad = np.deg2rad(theta)
             if gate[0].name == 'rx':
-                quaternion = _Quaternion.from_axisangle(rad / frames_per_gate, [1, 0, 0])
+                quaternion = _Quaternion.from_axisangle(theta / frames_per_gate, [1, 0, 0])
                 list_of_circuit_gates.append(('rx:'+str(theta), quaternion, '#16a085'))
             elif gate[0].name == 'ry':
-                quaternion = _Quaternion.from_axisangle(rad / frames_per_gate, [0, 1, 0])
+                quaternion = _Quaternion.from_axisangle(theta / frames_per_gate, [0, 1, 0])
                 list_of_circuit_gates.append(('ry:'+str(theta), quaternion, '#27ae60'))
             elif gate[0].name == 'rz':
-                quaternion = _Quaternion.from_axisangle(rad / frames_per_gate, [0, 0, 1])
+                quaternion = _Quaternion.from_axisangle(theta / frames_per_gate, [0, 0, 1])
                 list_of_circuit_gates.append(('rz:'+str(theta), quaternion, '#2980b9'))
             elif gate[0].name == 'u1':
-                quaternion = _Quaternion.from_axisangle(rad / frames_per_gate, [0, 0, 1])
+                quaternion = _Quaternion.from_axisangle(theta / frames_per_gate, [0, 0, 1])
                 list_of_circuit_gates.append(('u1:'+str(theta), quaternion, '#f1c40f'))
 
     if len(list_of_circuit_gates) == 0:


Test patch: