How to find the slope of a tangent on a point on a nonlinear curve?
8 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Aqua22
el 15 de Abr. de 2015
Comentada: John D'Errico
el 10 de Nov. de 2018
I have a set of data points x and y. I am plotting these on a (x,y) graph. The result is a nonlinear curve. On each and every point on the curve, tangents can be drawn and the slopes for every tangent will be different. I want to know, how I can I draw these tangents and find their slope. Please guide. I am new to MATLAB.
0 comentarios
Respuesta aceptada
John D'Errico
el 15 de Abr. de 2015
Editada: John D'Errico
el 15 de Abr. de 2015
You cannot find a slope until you define a curve. Simple points are not a curve. You have connected the points in your mind, so you "see" a curve. But all you have are points.
So you need to find a function that interpolates the points. A spline will do. Then differentiate the spline to get the slope.
You will probably want to use tools like spline (to fit a spline), fnder (differentiate it), and fnval (evaluate the derivative).
If these points form a completely general multi-valued relationship, such that there are multiple values of y for a given point x, you can still form a spline model, but it will take an extra step or two to do the work. An example of such a curve is a circle, where a direct spline fit using spline will fail.
7 comentarios
Deepak sharma
el 9 de Nov. de 2018
can u please share the whole code by taking some random data points
John D'Errico
el 10 de Nov. de 2018
I'm a bit perplexed. I already did share the code. I.e., use pchip, then fnder, then fnval. Other tools might apply in the scenario where you don't want to use pchip, or lack the curve fitting toolbox.
Más respuestas (1)
farzad
el 15 de Abr. de 2015
I think you just can define a straight line between each of the two point and simply find the slope of that line
Ver también
Categorías
Más información sobre Spline Postprocessing en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!