Discretise into Equal Intervals
Show older comments
I have an array of data, 2 columns and 19 rows of entries, which can be plotted as a loglog curve. However, the x-data I have does not have standard intervals and I need to approximate the curve as a piecewise linear function. Any suggestions as to how to go about this?
6 Comments
Bruno Pop-Stefanov
on 21 Jan 2014
Do you mean that the x-data is not aligned with your (2-by-19) array of data?
simply90
on 21 Jan 2014
Bruno Pop-Stefanov
on 21 Jan 2014
So you would like to interpolate the values of the curve at regularly-spaced points?
dpb
on 21 Jan 2014
What, precisely do you mean by "discretize over equal intervals"? If you mean to interpolate to a uniform (and is this uniform on linear or log axis) interval, just apply interp1 finding a new y for the chosen set of x on the log- or linear-spacing. Of course, by your description the fit is linear only in log-log so you'll want to transform first.
After that it should be relatively straightforward to choose breakpoints -- fit segments and move the breakpoint to minimize R-sq or max residual or whatever chosen criterion is.
simply90
on 21 Jan 2014
simply90
on 21 Jan 2014
Accepted Answer
More Answers (0)
Categories
Find more on Surface and Mesh Plots in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!