How to extract detail data from matlab Plot?

I have a plot in which there are 118 (x, y) points. Where x is not continuous. But plot has upto 490 datas when plotted. So how to extract all 490 data from the plot. Because if we use dataObjs we get only 118 points again.

 采纳的回答

If you plot only 118 points you can't get more from the plot. The results are interpolated and probably what you want is a continuous formula to model y as a function of x. If you have a polynomial data, take a look at the polyfit function from matlab. In case you really only want to have more refined values, you just need to interpolate the inbetween results yourself:
x = 1:118;
y = x.^2;
xq = linspace(x(1),x(end),490); % Here is the new points you want to generate
yq = interp1(x,y,xq,'pchip'); % Here is the actually interpolation
figure,plot(x,y,'*'),hold on,plot(xq,yq)

3 个评论

It's just speed data with time as x axis. So no polynomial function will help. And in your last point: In case you really only want to have more refined values, you just need to interpolate the inbetween results yourself:
So how to interpolate those results?
Just use the code that I gave to you in my answer replacing "x" and "y" by your x and y.

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Interpolation 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by