Clear Filters
Clear Filters

Connecting the threshold points of a curve using straight lines

2 views (last 30 days)
I want to connect the threshold point of energy using matlab programatically. I am unable to understand what is the best way to do it. Keeping in mind that at the end i will require only straight lines so need the data point for the lines fitting the curve. Any idea how can this be done?
  2 Comments
Rik
Rik on 2 May 2017
Are the straight lines known, or should they be generate from the curve?
If the first is the case, it is just a matter of finding the intersection coordinates of two straight lines, which should take you 5 minutes to Google.
If the latter is the case, I think I would try an iterative approach: use polyfit for more and more points, until a threshold is reached for a GOF-parameter, then start selecting points for the next line segment.
zafar khan
zafar khan on 2 May 2017
Well the orginal idea is to draw tangents ideally passing through or preferbly interstcting at the top or bottom point of curve tgreshold. As i require to do it without looking at it and at the end need the y values which will b values of tangent at time as x is time.

Sign in to comment.

Answers (1)

Image Analyst
Image Analyst on 2 May 2017
Assuming you don't know exactly where the tangent lines should fall, I think this is a case of finding the "minimum perimeter polygon". See http://dip.sun.ac.za/~hanno/tw444/lesings/lesing_19.pdf for a lesson on it.
  3 Comments
zafar khan
zafar khan on 2 May 2017
As per my understandin mpp is used to reduce the number of data points,but in my case each curve has 48 data points and i want to draw tangents just to linearize the shape. However, after drawing such tangents ( trying to draw tangents to best represet the original data) i will need that values of y or tangent values which are again 48 i.e half hourly reading of energy.
Image Analyst
Image Analyst on 2 May 2017
Knowing the data points, and the fact that there are lines in between them, you can use linspace() or interp1() to get a bunch of points in between.

Sign in to comment.

Categories

Find more on Get Started with Curve Fitting Toolbox in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!