# `plotly.figure_factory`.create_quiver¶

`plotly.figure_factory.``create_quiver`(x, y, u, v, scale=0.1, arrow_scale=0.3, angle=0.3490658503988659, scaleratio=None, **kwargs)

Returns data for a quiver plot.

Parameters
• x ((list|ndarray)) – x coordinates of the arrow locations

• y ((list|ndarray)) – y coordinates of the arrow locations

• u ((list|ndarray)) – x components of the arrow vectors

• v ((list|ndarray)) – y components of the arrow vectors

• in [0,1]) scale ((float) – scales size of the arrows(ideally to avoid overlap). Default = .1

• in [0,1]) arrow_scale ((float) – value multiplied to length of barb to get length of arrowhead. Default = .3

• in radians) angle ((angle) – angle of arrowhead. Default = pi/9

• float) scaleratio ((positive) – the ratio between the scale of the y-axis and the scale of the x-axis (scale_y / scale_x). Default = None, the scale ratio is not fixed.

• kwargs – kwargs passed through plotly.graph_objects.Scatter for more information on valid kwargs call help(plotly.graph_objects.Scatter)

Rtype (dict)

returns a representation of quiver figure.

Example 1: Trivial Quiver

```>>> from plotly.figure_factory import create_quiver
>>> import math
```
```>>> # 1 Arrow from (0,0) to (1,1)
>>> fig = create_quiver(x=, y=, u=, v=, scale=1)
>>> fig.show()
```

Example 2: Quiver plot using meshgrid

```>>> from plotly.figure_factory import create_quiver
```
```>>> import numpy as np
>>> import math
```
```>>> # Add data
>>> x,y = np.meshgrid(np.arange(0, 2, .2), np.arange(0, 2, .2))
>>> u = np.cos(x)*y
>>> v = np.sin(x)*y
```
```>>> #Create quiver
>>> fig = create_quiver(x, y, u, v)
>>> fig.show()
```

Example 3: Styling the quiver plot

```>>> from plotly.figure_factory import create_quiver
>>> import numpy as np
>>> import math
```
```>>> # Add data
>>> x, y = np.meshgrid(np.arange(-np.pi, math.pi, .5),
...                    np.arange(-math.pi, math.pi, .5))
>>> u = np.cos(x)*y
>>> v = np.sin(x)*y
```
```>>> # Create quiver
>>> fig = create_quiver(x, y, u, v, scale=.2, arrow_scale=.3, angle=math.pi/6,
...                     name='Wind Velocity', line=dict(width=1))
```
```>>> # Add title to layout
>>> fig.update_layout(title='Quiver Plot')
>>> fig.show()
```

Example 4: Forcing a fix scale ratio to maintain the arrow length

```>>> from plotly.figure_factory import create_quiver
>>> import numpy as np
```
```>>> # Add data
>>> x,y = np.meshgrid(np.arange(0.5, 3.5, .5), np.arange(0.5, 4.5, .5))
>>> u = x
>>> v = y
>>> angle = np.arctan(v / u)
>>> norm = 0.25
>>> u = norm * np.cos(angle)
>>> v = norm * np.sin(angle)
```
```>>> # Create quiver with a fix scale ratio
>>> fig = create_quiver(x, y, u, v, scale = 1, scaleratio = 0.5)
>>> fig.show()
```