Remove audio signal component under certain frequency in python
Why should the be a mistake?
A linear system (like your filter) can never introduce frequency components that weren't there. So, the tone can't move anywhere. And because you don't show the mapping of colors to power, you can't notice any change in amplitude.
So, I bet your signal is properly attenuated, you just forgot to actually check whether it is.
Also, filfilt is almost certainly not the function you're looking for, read the documentation to that function before using it. You're even importing lfilter!
Furthermore, you label this as &quot;BB (baseband?) signal&quot; in your plot. Further guess: you really don't want a Butterworth filter, but a FIR with a linear phase.
(Using an FIR with a linear phase would most definitely make filtfilt obsolete, as you can just shift the signal by the constant group delay.)