EDIT: I realized that my original answer (below) does not work for newer versions of pgfplots (since there is some mismatch between xmax, ymax and the explicit coordinates you are using for the rectangles. I fixed that, and also split the rectangles in smaller pieces. The number of points is controlled by samples=100.
\documentclass[tikz,border=3.14mm]{standalone}
\usetikzlibrary{patterns}
\usepackage{pgfplots}
\pgfplotsset{compat=1.16}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
grid=major,
width=\textwidth,
height=\axisdefaultheight,
xlabel = Time $(s)$,
ylabel = Frequency,
xmin = 0, xmax = 130,
ymin = 0, ymax = 4000,
]
%
\draw[pattern=north west lines, pattern color=blue, line width=1pt] (0,00) rectangle (40,1000);
\draw[pattern=north east lines, pattern color=blue, line width=1pt] (40,00) rectangle (80,1000);
\draw[pattern=north west lines, pattern color=blue, line width=1pt] (80,00) rectangle (120,1000);
%
\draw[pattern=north east lines, pattern color=green, line width=1pt] (0,1000) rectangle (40,2000);
\draw[pattern=north west lines, pattern color=green, line width=1pt] (40,1000) rectangle (80,2000);
\draw[pattern=north east lines, pattern color=green, line width=1pt] (80,1000) rectangle (120,2000);
%
\draw[pattern=north west lines, pattern color=red, line width=1pt] (0,2000) rectangle (40,3000);
\draw[pattern=north east lines, pattern color=red, line width=1pt] (40,2000) rectangle (80,3000);
\draw[pattern=north west lines, pattern color=red, line width=1pt] (80,2000) rectangle (120,3000);
%
\draw[pattern=north east lines, pattern color=orange, line width=1pt] (0,3000) rectangle (40,4000);
\draw[pattern=north west lines, pattern color=orange, line width=1pt] (40,3000) rectangle (80,4000);
\draw[pattern=north east lines, pattern color=orange, line width=1pt] (80,3000) rectangle (120,4000);
\pgfplotsinvokeforeach{1,...,12}
{\pgfmathtruncatemacro{\X}{mod((#1-1),3)}
\pgfmathtruncatemacro{\Y}{int((#1-1)/3+1)}
\addplot[scatter,clip=true, clip marker paths=true,
only marks, mark=*, samples=100,point meta=int(#1)
]({20+40*\X+20*rand},{-500+1000*\Y+500*rand});}
\end{axis}
\draw[decoration={brace,mirror,raise=15pt},decorate] (0,0) -- node[below=16pt] {\textbf{C}} (3.2,0);
\draw[decoration={brace,mirror},decorate] (10.8,0) -- node[xshift=10pt] {\rotatebox{-90}{\textbf{band}}} (10.8,1.4);
\end{tikzpicture}
\end{document}

ORIGINAL ANSWER(for older versions of pgfplots, produces your screen shot from your code):
I am not quite sure which rectangles you are talking about. This answer takes them to be the large ones, i.e. those which run from x=0 to x=12, but I will be happy to divide them for you. I also took n=100, which is controlled by samples=100.
\documentclass[tikz,border=3.14mm]{standalone}
\usetikzlibrary{patterns}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
grid=major,
width=\textwidth,
height=\axisdefaultheight,
xlabel = Time $(s)$,
ylabel = Frequency,
xmin = 0, xmax = 13,
ymin = 0, ymax = 4000,
]
\draw[pattern=north west lines, pattern color=blue, line width=1pt] (0,0) rectangle (40,100);
\draw[pattern=north east lines, pattern color=blue, line width=1pt] (40,0) rectangle (80,100);
\draw[pattern=north west lines, pattern color=blue, line width=1pt] (80,0) rectangle (120,100);
\draw[pattern=north east lines, pattern color=green, line width=1pt] (0,100) rectangle (40,200);
\draw[pattern=north west lines, pattern color=green, line width=1pt] (40,100) rectangle (80,200);
\draw[pattern=north east lines, pattern color=green, line width=1pt] (80,100) rectangle (120,200);
\draw[pattern=north west lines, pattern color=red, line width=1pt] (0,200) rectangle (40,300);
\draw[pattern=north east lines, pattern color=red, line width=1pt] (40,200) rectangle (80,300);
\draw[pattern=north west lines, pattern color=red, line width=1pt] (80,200) rectangle (120,300);
\draw[pattern=north east lines, pattern color=orange, line width=1pt] (0,300) rectangle (40,400);
\draw[pattern=north west lines, pattern color=orange, line width=1pt] (40,300) rectangle (80,400);
\draw[pattern=north east lines, pattern color=orange, line width=1pt] (80,300) rectangle (120,400);
\pgfplotsinvokeforeach{1,2,3,4}
{\addplot[scatter,clip=true, clip marker paths=true,
only marks, mark=*, samples=100,point meta=int(y/1000)
]({6+6*rand},{-500+1000*#1+500*rand});}
\end{axis}
\draw[decoration={brace,mirror,raise=15pt},decorate] (0,0) -- node[below=16pt] {\textbf{C}} (3.2,0);
\draw[decoration={brace,mirror},decorate] (10.8,0) -- node[xshift=10pt] {\rotatebox{-90}{\textbf{band}}} (10.8,1.4);
\end{tikzpicture}
\end{document}

Missing character: There is no . in font nullfont! Missing character: There is no 0 in font nullfont!What can I do?
– Davide Pisanò Jun 13 '18 at 09:23This is pdfTeX, Version 3.14159265-2.6-1.40.17 (TeX Live 2016/Debian) (preloaded format=pdflatex 2018.5.28) 13 JUN 2018 18:40 entering extended mode restricted \write18 enabled. %&-line parsing enabled. ... LaTeX2e <2017/01/01> patch level 3They should be up to date, I reinstalled them 2 weeks ago
– Davide Pisanò Jun 13 '18 at 16:42