How can I set one lsline using gscatter?

1 Ansicht (letzte 30 Tage)
Jose Rego Terol
Jose Rego Terol am 2 Sep. 2020
Kommentiert: Jose Rego Terol am 2 Sep. 2020
Hi,
So, I got 4 groups. By using gscatter I can colour each group. Now I want one lsline but I got 4 differnet lsline, one per group.
group=[zeros(str2num(answer{1,1}),1);1+zeros(str2num(answer{2,1}),1);...
2+zeros(str2num(answer{3,1}),1);3+zeros(str2num(answer{4,1}),1)];
group=string(group);
group=strrep(group, '0', 'Wt');
group=strrep(group, '1', 'Cpx II Ko');
group=strrep(group, '2', 'Cpx II Ko + Cpx I');
group=strrep(group, '3', 'Cpx II Ko + Cpx II');
h =gscatter(x,y,group);
hold on
lh = lsline;
This is my code. By doing this I got 4 different lslines. I want a single lsline made by all the values from x and y.
I've also tried this:
figure(1)
scatter(x_ko,y_ko,25,'LineWidth',2);
hold on
scatter(x_wt,y_wt,25,'LineWidth',2);
hold on
scatter(x_kowt,y_kowt,25,'LineWidth',2);
hold on
scatter(x_ko2,y_ko2,25,'LineWidth',2);
hold on
lh = lsline;
Same result, 4 lsline. I want one lsline for
This is the plot. 4 lsline. One each group. I want one lsline from all the dots.
Alternatively, I can use scatter(x,y) but then I do not know how to paint the dots by groups.

Akzeptierte Antwort

Adam Danz
Adam Danz am 2 Sep. 2020
Bearbeitet: Adam Danz am 2 Sep. 2020
Use coeffs = polyfit(x,y,1) to compute the regression line for all of the data and then refline(coeffs) to plot the regression line.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by