# Hsv ¶

- Title
- HSV Element
- Dependencies
- Matplotlib
- Backends
- Matplotlib
- Bokeh

```
import numpy as np
import holoviews as hv
from holoviews import opts
hv.extension('matplotlib')
```

HSV represents a regularly spaced 2D grid of an underlying continuous space of HSV (hue, saturation and value) color space values. The definition of the grid closely matches the semantics of an
```
Image
```

or
```
RGB
```

element and in the simplest case the grid may be specified as a
```
NxMx3
```

or
```
NxMx4
```

array of values along with a bounds. An HSV element may also be defined through explicit and regularly spaced x/y-coordinate arrays. The two most basic supported constructors of an HSV element therefore include:

```
HSV((X, Y, H, S, V))
```

where
```
X
```

is a 1D array of shape
```
M
```

,
```
Y
```

is a 1D array of shape
```
N
```

and
```
H
```

/
```
S
```

/
```
V
```

are 2D array of shape
```
NxM
```

, or equivalently:

```
HSV(Z, bounds=(x0, y0, x1, y1))
```

where
```
Z
```

is a 3D array of stacked
```
H
```

/
```
S
```

/
```
V
```

arrays with shape
```
NxMx3/4
```

and the bounds define the (left, bottom, right, top) edges of the four corners of the grid. Other gridded formats which support declaring of explicit x/y-coordinate arrays such as xarray are also supported. See the
Gridded Datasets
user guide for all the other accepted data formats.

```
x,y = np.mgrid[-50:51, -50:51] * 0.1
h = 0.5 + np.sin(0.2*(x**2+y**2)) / 2.0
s = 0.5*np.cos(y*3)+0.5
v = 0.5*np.cos(x*3)+0.5
hsv = hv.HSV(np.dstack([h, s, v]))
hsv
```

You can see how this is created from the original channels:

```
opts.defaults(opts.Image(cmap='gray'))
hsv[..., 'H'].relabel('H') + hsv[..., 'S'].relabel('S') + hsv[..., 'V'].relabel('V')
```

An
```
HSV
```

Element can also easily be converted to an
```
RGB
```

Element using the
```
rgb
```

property:

```
print(hsv.rgb)
hsv.rgb[..., 'R'] + hsv.rgb[..., 'G'] + hsv.rgb[..., 'B']
```

For full documentation and the available style and plot options, use
```
hv.help(hv.HSV).
```

Download this notebook from GitHub (right-click to download).