在matlab中绘制数据的导数

Plotting Derivative of data in matlab

我是 Matlab 的新手,我在 matlab 文件的结构下存储了一些 Current Vs 时间。 我想要绘制的是电流与时间以及它的一阶导数。 (di/dt)。我使用了 diff 函数,但情节似乎真的很奇怪。 我知道这很简单,但谁能解释一下。

在此先致谢。

假设你有一个结构 S,

S.t是时间向量,S.I是[=中每个时间的当前向量19=]S.t。 (两者的长度应相同N)。

现在,如果你想求导数的近似值:

dt = diff(S.t); % dt is the time intervals length, dt is N-1 length. 
dI = diff(S.I);  
derivative = dI./dt; %derivative is memberwise division of dI by dt 
plot(t(1:end-1),derivative); % when you plot both vector should be in the same length:
                             % t(1:end-1) is the same as t except the last coordinate

我认为这应该可行