plot same column from different matrices on the same figure

2 views (last 30 days)
Nicolas on 11 Nov 2015
Commented: Nicolas on 18 Nov 2015
I have 2 matrices A and B both 9x5
I would like to simplify the loop
figure, hold on
for i = 1:5
scatter(A(:,i),B(:,i))
end
hold off
ta

Sudhanshu Bhatt on 18 Nov 2015
Hi Nicolas,
I understand that you want the same column number in two different matrices be plotted on a figure and then in the next iteration take the data points from the next column in both the matrices and plot them on the same figure?
The loop can be removed when working with PLOT function in MATLAB. PLOT can take matrices as an input argument. More information on the PLOT function can be found in the documentation link below:
Scenario 1: Use PLOT function and plot lines:
% Example
A = rand(9,5);
B = rand(9,5);
figure;
plot(A,B);
SCATTER function unfortunately does not take matrices as an input argument. So there is no way to remove the loop. More information on SACTTER function can be found in the documentation link below:
But in this case we can specify markers in PLOT function to get the same result:
Scenario 2: Use PLOT function with Markers
% Example with Markers
A = rand(9,5);
B = rand(9,5);
figure;
plot(A,B,'o');
More information on Markers can be found in the documentation link below: Specify Line Style, Colors and Markers
Hope this helps!
Thanks
Sudhanshu Bhatt
Nicolas on 18 Nov 2015
Thank you very much, that was very helpful!