Your code should be taught as an example for How you should never write code in Matlab!, your massive use of eval
make it virtually impossible to follow your code. Hence, I'll just drop here what I think may solve your problem, but for any explanations, you would first need to rewrite your code in a proper way (you may want to read this and this).
c = 0;
for k=1:(rx * tx)
for m=1:(rx * tx)
eval(sprintf('t_%d_%d_t = corrcoef(m_a%d_abs, m_b%d_abs)', pairs(k), pairs(m), pairs(k), pairs(m)));
eval(sprintf('t_%d_%d = t_%d_%d_t(1, 2)', pairs(k), pairs(m), pairs(k), pairs(m)));
if(eval(sprintf('t_%d_%d', pairs(k), pairs(m))) >= max_cor)
nx = eval(sprintf('numel(a%d)', pairs(k)));
X = c+1:(c+nx);
eval(sprintf('plot(X,a%d, ''r'')', pairs(k)));
hold on;
eval(sprintf('plot(X,b%d, ''b'')', pairs(m)));
c = c+nx;
xlabel('Tones (f)');
end
end
end