![Изображение](http://s010.radikal.ru/i313/1502/93/d4894d3d1bda.png)
(яркостью кодируется абсолютное значение, цветом - фаза).
Может, фазу в цвета отображать немного по-другому? Если сравнить формулу с картинкой, как будто у вас пары разных значений фазы дают один цвет.
(Предложение функции преобразования комплексного числа в цвет.)
Если сопоставить аргументу значение hue из HSV, получится тоже не очень, т. к. воспринимаемая яркость цвета зависит не только от HSV value, но и от hue. Это можно исправить, считая что-то такое:
![$$f(v,x,y) = \begin{bmatrix} 1 \\ 1 \\ 1 \end{bmatrix}v + \left( \frac14 - \left( v - \frac12 \right)^2 \right)\begin{bmatrix} -0{,}14861 & 1{,}78277 \\ -0{,}29227 & -0{,}90649 \\ 1{,}97294 & 0 \end{bmatrix} \begin{bmatrix} x \\ y \end{bmatrix}.$$ $$f(v,x,y) = \begin{bmatrix} 1 \\ 1 \\ 1 \end{bmatrix}v + \left( \frac14 - \left( v - \frac12 \right)^2 \right)\begin{bmatrix} -0{,}14861 & 1{,}78277 \\ -0{,}29227 & -0{,}90649 \\ 1{,}97294 & 0 \end{bmatrix} \begin{bmatrix} x \\ y \end{bmatrix}.$$](https://dxdy-02.korotkov.co.uk/f/1/8/e/18e083d8a1a098c747241dbb305f5db082.png)
Точно не скажу, из каких соображений эта функция, возвращающая компоненты цвета в пространстве sRGB, имеет такой вид, но вот что она делает: при
![$v = 0$ $v = 0$](https://dxdy-01.korotkov.co.uk/f/c/f/5/cf5e8f7f774bf3ef44db37ce2076876b82.png)
выдаёт чёрный, при
![$v = 1$ $v = 1$](https://dxdy-04.korotkov.co.uk/f/7/b/f/7bf10402dcc36718c8d970565c1a903c82.png)
— белый, при промежуточных значениях
![$v$ $v$](https://dxdy-03.korotkov.co.uk/f/6/c/4/6c4adbc36120d62b98deef2a20d5d30382.png)
даёт цвета какой-то промежуточной, но, главное,
одинаковой яркости (если пренебрегать некоторыми эффектами; в любом случае данное приближение много лучше работы HSV). Параметры
![$x,y$ $x,y$](https://dxdy-01.korotkov.co.uk/f/0/a/c/0acac2a2d5d05a8394e21a70a71041b482.png)
изменяются в пределах
![$[-1;1]$ $[-1;1]$](https://dxdy-01.korotkov.co.uk/f/8/2/4/824138638ae0b24e5665173857dfe11e82.png)
, и
![$\arctg_2(x,y)$ $\arctg_2(x,y)$](https://dxdy-02.korotkov.co.uk/f/1/4/4/144004dd59075c0d2e99b1cb88fe23ca82.png)
определяет оттенок цвета.
На основе
![$f$ $f$](https://dxdy-02.korotkov.co.uk/f/1/9/0/190083ef7a1625fbc75f243cffb9c96d82.png)
можно построить функцию, «красящую» комплексные числа, например, так:
![$$g(z) = \begin{cases} [1,1,1]^t, &\text{если } |z|=0, \\ f\left(1-|z|/r_0, \frac{\operatorname{Re}z}{|z|}, \frac{\operatorname{Im}z}{|z|}\right) &\text{иначе}. \end{cases}$$ $$g(z) = \begin{cases} [1,1,1]^t, &\text{если } |z|=0, \\ f\left(1-|z|/r_0, \frac{\operatorname{Re}z}{|z|}, \frac{\operatorname{Im}z}{|z|}\right) &\text{иначе}. \end{cases}$$](https://dxdy-01.korotkov.co.uk/f/8/9/a/89a6abc2698151ee3b3a574613f3216282.png)
Данная обрабатывает числа только с модулем меньше
![$r_0$ $r_0$](https://dxdy-02.korotkov.co.uk/f/1/d/b/1db75c795ab2c794f72bbe79b8113be182.png)
, сопоставляя всем числам с
![$|z| = r_0$ $|z| = r_0$](https://dxdy-02.korotkov.co.uk/f/5/6/9/5693839e17b56d4a18b1f932147290d582.png)
чёрный, нулю белый, и всем остальным цвета с яркостью, зависящей только от
![$|z|$ $|z|$](https://dxdy-03.korotkov.co.uk/f/e/5/3/e5304b73378d1c42c062e1835aed9a9782.png)
и оттенком, зависящим только от
![$\arg z$ $\arg z$](https://dxdy-02.korotkov.co.uk/f/d/f/7/df7ac04002fc43e14eba91f1be068c3a82.png)
. О воспринимаемой равномерности зависимостей ничего не скажу, да и в любом случае легенду прилагать стоит.
Вот пример работы
![$g$ $g$](https://dxdy-04.korotkov.co.uk/f/3/c/f/3cf4fbd05970446973fc3d9fa3fe3c4182.png)
; по вертикали отложен аргумент (ноль по краям), по горизонтали — модуль (слева ноль, справа
![$r_0$ $r_0$](https://dxdy-02.korotkov.co.uk/f/1/d/b/1db75c795ab2c794f72bbe79b8113be182.png)
):