I have a vector 1x80. If i put x(1,80) and y (the values of the vector from 1 to 80), i have a plot. I do not know the function which describes the plot. I want to plot the derivatives of the unknown fuction.

 채택된 답변

pfb
pfb 2015년 4월 27일
편집: pfb 2015년 4월 27일

1 개 추천

You can do that approximately.
% this is the "finite difference" derivative. Note it is one element shorter than y and x
yd = diff(y)./diff(x);
% this is to assign yd an abscissa midway between two subsequent x
xd = (x(2:end)+x(1:(end-1)))/2;
% this should be a rough plot of your derivative
plot(xd,yd)
Of course the reliability of the above procedure depends on the thickness of your grid x as well as on the properties of y.
You could perhaps do a slightly (cosmetically) better job by interpolating your data using interp1.

댓글 수: 1

Thank you!I think this is helpful for me.When you say to interpolate my data, you mean to find a function which desribes the data?Is it easy to give me an example how to do this..

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

질문:

2015년 4월 27일

댓글:

2015년 4월 27일

Community Treasure Hunt

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

Start Hunting!

Translated by