Hi, The discrete wavelet transform divides the signal energy into octave bands. So the wavelet filtering at level J, approximates a bandpass filter for (Fs/2^(J+1), Fs/2^J] where Fs is the sample rate in Hz. Now, how well the transform actually approximates that bandpass filtering depends on the wavelet filter. For the Haar wavelet, it is not as good as say the Daubechies least asymmetric 'sym4' filter. If you want to get this answer in software, you can use dwtfilterbank()
fb = dwtfilterbank('Wavelet','sym4','SamplingFrequency',1e3);
You can set the level to get them by level. The last row of fb.dwtpassbands() is the passband for the scaling (lowpass) filter, or what you have called the approximation.
Let's say you only had a 3-level transform
fb = dwtfilterbank('Wavelet','sym4','SamplingFrequency',1e3,'Level',3);
If you want to see the frequency responses for a particular wavelet passband, you can use the frequency response method.
The legend is interactive, if you click on the line it activates-deactivates the plot for that item.