extract all points from curves
    13 ビュー (過去 30 日間)
  
       古いコメントを表示
    
Hello,
In the code below : Is there's any chance to have the coordinates of intermediate points (for example to have "y" when x=1.5 ) ...I just want to have all coordinates from curves, and not only natural numbers like x coordinates and y coordinates.
I've tried with "findobj" but It did not work.  Thank you for your help.
x= [1,2,3,4,5,6,7,8,9,10]
y= [1,2,3,4,5,6,7,8,9,10]
figure
plot(x,y)
1 件のコメント
  Adam Danz
    
      
 2021 年 5 月 11 日
				> I just want to have all coordinates from curves
There are an infinite number of points on a curve.  Even if you limit the interval to the lowest possible floating point representation, your system will likely reach memory capacity.  For values 1 to 10, there would be something like 4*10^16 values.
Your options are to interpolate or fit the curve, both of which are demonstrated in the answers below.
(10-1)/eps
採用された回答
  Fangjun Jiang
      
      
 2021 年 5 月 11 日
        x= [1,2,3,4,5,6,7,8,9,10]
y= [1,2,3,4,5,6,7,8,9,10]
in=[1.2,2.3,3.5]
out=interp1(x,y,in)
0 件のコメント
その他の回答 (2 件)
  Image Analyst
      
      
 2021 年 5 月 11 日
        Try this:
% Create sample data.
x = [1,2,3,4,5,6,7,8,9,10]
y = [1,2,3,4,5,6,7,8,9,10]
% Add some noise to make the data "wavy".
y = y + rand(1, length(y));
markerSize = 20;
plot(x, y, 'bo', 'MarkerSize', markerSize);
grid on;
hold on;
xlabel('x', 'FontSize', 20);
ylabel('y', 'FontSize', 20);
% Define intermediate values.
desiredX = min(x) : 0.333333333 : max(x);
% Do a spline fit, which can follow curves better than interp with lines.
yFit = spline(x, y, desiredX);
plot(desiredX, yFit, 'r.', 'MarkerSize', markerSize);
legend('Original', 'Fit', 'Location', 'northwest');

0 件のコメント
参考
カテゴリ
				Help Center および File Exchange で Interpolation についてさらに検索
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!



