2015-03-25 75 views
1

我知道這可能是一個愚蠢的問題,但嚴重的我找不到答案。我有一些數據,並基於它們插入了一條曲線:現在我想知道曲線上給定點處的曲線斜率......我該如何輕鬆快速地做到這一點? 我的意思是,除了做兩個關閉點的數學和手工找到斜率係數。Matlab繪圖的坡度

+1

您可以通過編程* *做數學題有兩個親密的點和找坡。 – 2015-03-25 10:09:52

+0

是的,我知道,我正在考慮一種圖形方式,我可以點擊一個點並立即查看坡度,以便我可以快速查看各個點的坡度。如果這樣的事情存在。 – 2015-03-25 10:13:56

+0

看看[**'gradient' **](http://www.mathworks.com/help/matlab/ref/gradient.html)。 – thewaywewalk 2015-03-25 10:14:12

回答

2

您在尋找gradient的功能。

%// example data 
x = linspace(0,2*pi); 
y = sin(x); 

%// finer x-axis 
x_in = linspace(0,2*pi,2000); 

%// interpolated data 
y_in = interp1(x,y,x_in); 

%// point of interest 
dx = pi; 
idx = find(x_in > dx,1) 

%// slot at x = pi 
sl = gradient(y_in,x_in); 
s1_pi = sl(idx) 

回報:

s1_pi = 

    -0.99983 

(預期s1_pi = 1

+0

謝謝你的回覆!我沒有想過「find」方法,它非常有用! – 2015-03-25 10:50:48

+2

@GianMauroMusso不要忘記接受答案! – 2015-03-25 10:52:38

+0

對不起,新來了,我忘了 – 2015-03-25 10:59:40