An IndirectArray is one that encodes data using a combination of an
index and a value table. Each element is assigned its own index, which
is used to retrieve the value from the value table. Concretely, if
A is an IndirectArray, then A[i,j...] = value[index[i,j,...]].
Among other uses, IndirectArrays can represent
indexed images,
sometimes called "colormap images" or "paletted images."
Pkg.add("IndirectArrays")For example:
using IndirectArrays, Colors
colors = distinguishable_colors(6)
index = rand(1:6, 32, 32)
A = IndirectArray(index, colors)
which has only 6 colors in it.
The value array can be of any type; it does not have to be color information.
- CategoricalArrays offers an even more flexible interface for dealing with arrays in which values are looked up in an index.
- PooledArrays
