MATLAB Answers

Subtraction of negative matrix element

4 views (last 30 days)
Michael on 12 Aug 2018
Commented: Michael on 15 Aug 2018
My data (X,Y) and I am trying to find the distance between the Y value of two points. My issue results from the negative Y value of one of the points. Concept A =1; B =-3; C= A-B; -->4 However, I keep getting an error message
% line 1 has the following values
0 0.750000000000000
0 0
0 -0.500000000000000
0 -0.750000000000000
% Subtraction method
DistX2 = minus(line1 (1,2), line (3,2));
DistX2 = (line1 (1,2) - line (3,2));
% error code
Undefined operator '-' for input arguments of type ''.
Error in PlotCurve (line 50)
DistX2 = minus(line1 (1,2), line (3,2));
  1 Comment
Stephen on 12 Aug 2018
@Michael: a line object is not a numeric array. They cannot be "subtracted" in any meaningful way. You could get the Ydata values and subtract those. But most likely it would be simpler and easier to just subtract the values that you used to create the line object: so how did you create this line object?
Do NOT call your variable line, as this shadows the very important inbuilt line function.

Sign in to comment.

Accepted Answer

Image Analyst
Image Analyst on 12 Aug 2018
line() is a built-in function and you are not using it correctly. Do not use built-in function names for names of your variables. Call it line2 or something instead of line.
  1 Comment
Michael on 15 Aug 2018
Thanks, Yes I agree that it should be callled something else the second term should be named differently. It was supposed to have read
DistX2 = minus(line1 (1,2), line1 (3,2));
However, cut and paste plus editing resulted in it being missed and the error code just wasn't descriptive enough for me to pick out.

Sign in to comment.

More Answers (0)




Community Treasure Hunt

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

Start Hunting!

Translated by