# Removing additional points from scatter plot

5 views (last 30 days)
Prasad Joshi on 11 Feb 2022
Commented: Prasad Joshi on 11 Feb 2022
How can I removed this additional legend data and keep only 2kw , 3kw and 4 kw and remove additional data points from legend of scatter plot ..Thank you in advance
The code That i used
A=xlsread('Compare_All_cases','B9:AB9');
i= 1
x1=ones(1,3);
y1=A(:,(i:(i+2)))
hold on
a=scatter(x1,y1,'filled','r')
xtics=[0:1:4];
xticlab={'' '20sec' '35sec' '50sec' ''};
set(gca,'XTick',xtics,'XTickLabel',xticlab,'Fontsize', 10)
text(x1(1),y1(1),sprintf(' (%.1f)[55 55]',y1(1)))
text(x1(2),y1(2),sprintf(' (%.1f)[55 35]',y1(2)))
text(x1(3),y1(3),sprintf(' (%.1f)[35 35]',y1(3)))
i= 4
x2=(ones(1,3)+1);
y2=A(:,(i:(i+2)))
hold on
scatter(x2,y2,'filled','r')
xtics=[0:1:4];
xticlab={'' '20sec' '35sec' '50sec' ''};
set(gca,'XTick',xtics,'XTickLabel',xticlab,'Fontsize', 10)
text(x2(1),y2(1),sprintf(' (%.1f)[55 55]',y2(1)))
text(x2(2),y2(2),sprintf(' (%.1f)[55 35]',y2(2)))
text(x2(3),y2(3),sprintf(' (%.1f)[35 35]',y2(3)))
i= 7
x3=(ones(1,3)+2);
y3=A(:,(i:(i+2)))
hold on
scatter(x3,y3,'filled','r')
xtics=[0:1:4];
xticlab={'' '20sec' '35sec' '50sec' ''};
set(gca,'XTick',xtics,'XTickLabel',xticlab,'Fontsize', 10)
text(x3(1),y3(1),sprintf(' (%.1f)[55 55]',y3(1)))
text(x3(2),y3(2),sprintf(' (%.1f)[55 35]',y3(2)))
text(x3(3),y3(3),sprintf(' (%.1f)[35 35]',y3(3)))
i= 10
x4=(ones(1,3));
y4=A(:,(i:(i+2)))
hold on
scatter(x4,y4,'filled','b')
xtics=[0:1:4];
xticlab={'' '20sec' '35sec' '50sec' ''};
set(gca,'XTick',xtics,'XTickLabel',xticlab,'Fontsize', 10)
text(x4(1),y4(1),sprintf(' (%.1f)[55 55]',y4(1)))
text(x4(2),y4(2),sprintf(' (%.1f)[55 35]',y4(2)))
text(x4(3),y4(3),sprintf(' (%.1f)[35 35]',y4(3)))
i= 13
x5=(ones(1,3)+1);
y5=A(:,(i:(i+2)))
hold on
scatter(x5,y5,'filled','b')
xtics=[0:1:4];
xticlab={'' '20sec' '35sec' '50sec' ''};
set(gca,'XTick',xtics,'XTickLabel',xticlab,'Fontsize', 10)
text(x5(1),y5(1),sprintf(' (%.1f)[55 55]',y5(1)))
text(x5(2),y5(2),sprintf(' (%.1f)[55 35]',y5(2)))
text(x5(3),y5(3),sprintf(' (%.1f)[35 35]',y5(3)))
i= 16
x6=(ones(1,3)+2);
y6=A(:,(i:(i+2)))
scatter(x6,y6,'filled','b')
hold on
xtics=[0:1:4];
xticlab={'' '20sec' '35sec' '50sec' ''};
set(gca,'XTick',xtics,'XTickLabel',xticlab,'Fontsize', 10)
text(x6(1),y6(1),sprintf(' (%.1f)[55 55]',y6(1)))
text(x6(2),y6(2),sprintf(' (%.1f)[55 35]',y6(2)))
text(x6(3),y6(3),sprintf(' (%.1f)[35 35]',y6(3)))
i= 19
x7=(ones(1,3));
y7=A(:,(i:(i+2)))
hold on
scatter(x7,y7,'filled','k')
xtics=[0:1:4];
xticlab={'' '20sec' '35sec' '50sec' ''};
set(gca,'XTick',xtics,'XTickLabel',xticlab,'Fontsize', 10)
text(x7(1),y7(1),sprintf(' (%.1f)[55 55]',y7(1)))
text(x7(2),y7(2),sprintf(' (%.1f)[55 35]',y7(2)))
text(x7(3),y7(3),sprintf(' (%.1f)[35 35]',y7(3)))
i= 22
x8=(ones(1,3)+1);
y8=A(:,(i:(i+2)))
hold on
scatter(x8,y8,'filled','k')
xtics=[0:1:4];
xticlab={'' '20sec' '35sec' '50sec' ''};
set(gca,'XTick',xtics,'XTickLabel',xticlab,'Fontsize', 10)
text(x8(1),y8(1),sprintf(' (%.1f)[55 55]',y8(1)))
text(x8(2),y8(2),sprintf(' (%.1f)[55 35]',y8(2)))
text(x8(3),y8(3),sprintf(' (%.1f)[35 35]',y8(3)))
i= 25
x9=(ones(1,3)+2);
y9=A(:,(i:(i+2)))
hold on
scatter(x9,y9,'filled','k')
xtics=[0:1:4];
xticlab={'' '20sec' '35sec' '50sec' ''};
set(gca,'XTick',xtics,'XTickLabel',xticlab,'Fontsize', 10)
text(x9(1),y9(1),sprintf(' (%.1f)[55 55]',y9(1)))
text(x9(2),y9(2),sprintf(' (%.1f)[55 35]',y9(2)))
text(x9(3),y9(3),sprintf(' (%.1f)[35 35]',y9(3)))
xlim([0 4])
ylabel('CO emissions [mg]')
title ('CO emission for 25 sec after catalyst 1')
legend('2 kW' ,'' ,'' ,'3 kW' ,'','','4 kW')
##### 6 CommentsShowHide 5 older comments
Prasad Joshi on 11 Feb 2022
Actually I am not that much proficient in Programming a beginner .....I am just seeing from online stuffs and developing code ...can you suggest how can I add for loop to this case ...Thank you in advance

Sign in to comment.

### Accepted Answer

Prasad Joshi on 11 Feb 2022
Just in cases anyone requiried add duplicate entries to code ...it work for me
hold on
h1 = scatter(-10,-10, 'r,'filled', 'DisplayName', ' 2kW');
h2 = scatter(-10,-10, 'b','filled', 'DisplayName', '3 kW');
h3 = scatter(-10,-10, 'k','filled', 'DisplayName', '4 kW');
% duplicating the plot
xlim([0 10] ) % taking positive values
legend([h1(1) h2(1) h3(1)])
##### 2 CommentsShowHide 1 older comment
Prasad Joshi on 11 Feb 2022
ya ...Thank you RIK for you help ......

Sign in to comment.

### Community Treasure Hunt

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

Start Hunting!