# How to plot it?

2 views (last 30 days)
Ara on 13 Jul 2022
Commented: Ara on 16 Jul 2022
Dear All,
We have
a=1,2,3,4,5; (in a column 1)
b=-1000,10,0,20,-20; (in a column 2)
b_filtered=b(:,2)>=0;
plot (a,b_filtered);
How to plot these two values that after filtered they have two different dimensions?
Best,

Chunru on 13 Jul 2022
a = [1,2,3,4,5];
b = [-1000,10,0,20,-20];
idx = b>=0;
plot(a(idx), b(idx), 'o-'); Ara on 16 Jul 2022
Thank you.
your plot is different with the other answeres. I do not know which one is correct to adapt it to my code. Do you know?

### More Answers (3)

Mathieu NOE on 13 Jul 2022
hello
simply replace the negative values of b by NaN so the vector size remains the same
a=[1;2;3;4;5];
b= [-10;10;0;20;-20];
b_filtered=b;
b_filtered(b<0) = NaN;
plot (a,b,a,b_filtered,'dr');
Ara on 16 Jul 2022
Hello Mathieu,
The plot you provided is different with the plot above provided by another expert who response to my question. I am confuse as I do not know which one is correct and how to modify my code based on which solution. Would you please tell me which one is correct?

Ruchika P Barman on 13 Jul 2022
It is my understanding that you are trying to plot a and b_filtered. I believe b_filtered is supposed to contain the non-negative elements of b, please correct me if I'm wrong on this, I did not understand what exactly is (b(:,2)>=0) supposed to do? If I'm not wrong, we can retain the elements of a at the indices where b is not negative and plot a and b accordingly.
a=[1;2;3;4;5];
b= [-10;10;0;20;-20];
b(b<0)=NaN;
a(b<0)=NaN;
b_filtered=b;
p=plot (a,b_filtered,"red"); Ara on 13 Jul 2022
Thank you Ruchika, for your response.
it means second column of my data should be greater than zero. I do not know which answer is correct as the figure for second answer isnot the same with yours. You and the first answer are the same output.
I have to modify it in a large set of data.
Ara on 15 Jul 2022
Edited: Ara on 15 Jul 2022
I have "data" file. When I open it in matlab that consist of 12 coumns and one of them is b. So, b is a column that contain a full range of data in a one column.