n = 1000; x = 2.0*randn(n, 1); z = 3.0*randn(n, 1); rs = [-1.0:0.25:1.0]; for k = 1:length(rs) r = rs(k); y = r*x + sqrt(1.0-r^2)*z; r cv = cov([x y]) corrcoef([x y]) subplot(3, 3, k) scatter(x, y, 'filled', 'MarkerEdgeColor', 'white') title(sprintf('r=%g', r)) xlim([-10, 10]) ylim([-20, 20]) text(-8, -15, sprintf('cov(x,y)=%.2f', cv(1, 2))) end savefigpdf(gcf, 'covariance.pdf', 20, 20);