How to use scatterplot in a loop

10 次查看(过去 30 天)
Hi all,
I have two data sets which are matrixes 100x18 double.
I want to scatterplot:
column 1(data1) vs column 1 (data2)
column 2(data1) vs column 2 (data2)
....
column 18 (data 1) vs column 18(data2)
The below:
for g=1:length(Data2) %for each column
scatter(Data1(g), Data2(g));
end
produces:
I would like these data sets plotted in diffrent colours. Can you help please?

采纳的回答

Simon Chan
Simon Chan 2022-3-18
Try this:
clear;clc;
Data1 = reshape(1:100*18,[],18);
Data2 = randi([50 100],100,18);
c = repmat(linspace(1,10,18),100,1);
scatter(Data1(:),Data2(:),[],c(:));
  5 个评论
Simon Chan
Simon Chan 2022-3-18
If everything plot into one figure, see below:
Or do you want to plot them in separate figures?
Data1 = randi([1 50],100,18); % Value for dummy data from 1 to 50 (Set #1)
Data2 = randi([50 100],100,18); % Value for dummy data from 50 to 100 (Set #2)
scatter(1:1800,Data1(:),[],[1 0 0]); % 1st set
hold on
scatter(1:1800,Data2(:),[],[0 1 0]); % 2nd set
hold off
Tomaszzz
Tomaszzz 2022-3-18
Thanks @Simon Chan your first answer is what actually wanted

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Resizing and Reshaping Matrices 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by