How change the slopes in a curve from positive to negative

8 views (last 30 days)
We hve a set of data points representing a curve.when the y value is greater than 345, for any line between two points, if the line had a positive slope we need to flip its sign and make it negative. attached is the data we are using and an image of the part of the curve that we would like to modify
Any idea how this can be done?
  2 Comments
DGM
DGM on 10 Jul 2023
Edited: DGM on 10 Jul 2023
Describe the specific conditions used to determine when a change should be made. Also, you appear to be plotting the data transposed (i.e. the inxb2 data is plotted on the y-axis). Is that the manner in which slope should be calculated?
Malak
Malak on 10 Jul 2023
Yes you are right I am plotting the transponse, and the slope should be calculated in this manner. I have modified the attached data to show the proper x and y data. The only specific condition is that when the y value is greater than 345 then we flip any straight line that has a positive slope to become having a negative one.

Sign in to comment.

Answers (1)

chicken vector
chicken vector on 10 Jul 2023
This works if you don't really care about the value on the y-axis:
load datapoints
inyb2 = -cumsum(abs(diff([0; inyb2])));
plot(inxb2,inyb2);

Products


Release

R2022b

Community Treasure Hunt

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

Start Hunting!