don’t you lose information by taking the abs(), since to restore the full information you need both complex and imaginary parts of the fft? You could probably get away with encoding Re and Im in different color channels tho
Another nice way one could preserve the complex data when visualizing it would be to make a 3d color mesh and display the imaginary components as the height in z and the real component as the color scale (or vice-versa).
Edit* now I am trying to think if there would be a clever way to show the abs, Re and Im values in one 3d plot, but drawing a blank. Maybe tie Im to the alpha value to make the transparency change as the imaginary component goes up and down? It would just require mapping the set of all numbers from -inf:inf to 0:1, which is doable in a 1-1 transformation iirc since they both have cardinality C. I think it would be
alpha = 1 - 1/(1-e^{Im(z)})
Which looks a lot like the equation for Bose-Einstein statistics in Stat. Mech. I was never very good at complex analysis or group theory though, so I don’t really know what to make of that.
Bose-Einstein isn’t a great fit, since you’d need to integrate, and it only goes from 0:inf. For mapping the reals to 0:1 you could use arctan and shift it a bit.
Now I’m thinking, instead of color and alpha, you could use two out of hue, saturation and value for Re and Im (or all three, and plot Abs as well)
Ah, you’re right, I haven’t taken Stat. Mech. in almost 5 years so my brain just latched on to the general form. Analysis in frequency space is always fun
don’t you lose information by taking the abs(), since to restore the full information you need both complex and imaginary parts of the fft? You could probably get away with encoding Re and Im in different color channels tho
Another nice way one could preserve the complex data when visualizing it would be to make a 3d color mesh and display the imaginary components as the height in z and the real component as the color scale (or vice-versa).
Edit* now I am trying to think if there would be a clever way to show the abs, Re and Im values in one 3d plot, but drawing a blank. Maybe tie Im to the alpha value to make the transparency change as the imaginary component goes up and down? It would just require mapping the set of all numbers from -inf:inf to 0:1, which is doable in a 1-1 transformation iirc since they both have cardinality C. I think it would be
alpha = 1 - 1/(1-e^{Im(z)})
Which looks a lot like the equation for Bose-Einstein statistics in Stat. Mech. I was never very good at complex analysis or group theory though, so I don’t really know what to make of that.
Bose-Einstein isn’t a great fit, since you’d need to integrate, and it only goes from 0:inf. For mapping the reals to 0:1 you could use arctan and shift it a bit.
Now I’m thinking, instead of color and alpha, you could use two out of hue, saturation and value for Re and Im (or all three, and plot Abs as well)
Ah, you’re right, I haven’t taken Stat. Mech. in almost 5 years so my brain just latched on to the general form. Analysis in frequency space is always fun
Correct. I updated my comment.