I've been trying to normalize the magnitude results of a FFT signal analysis in a range between 0 and 1.

What I'm doing now is to do list operations on the tables to find the maximum value of the current FFT results and divide all the values by it (see patch attached). This works nicely with Pd generated waves, but it doesn't look good with samples (it's very narrow on the lower frequencies and not spread at all, see picture below).

Here are my questions:

- Is there a way to normalize the values on the signal domain, without these table operations?
- If not, why does the normalized FFT looks so narrow?

Many thanks!