Filter löschen
Filter löschen

How can I plot the gradient vector of y=f(X) which is perpendicular to the graph?

1 Ansicht (letzte 30 Tage)
To plot the gradient vectors of f(x)=y=sin(x), I plotted z=y-sin(x) contours and plotted the gradient vectors for each contour but I just want one curve which is equal y=sin(x) and its gradient vector. The codes I used are as follows:
x=-pi:0.2:pi;
y=-1:0.2:1;
[X,Y]=meshgrid(x,y);
Z=Y-sin(X);
contour(X,Y,Z)
xlabel({'$x$'},'interpreter','latex')
ylabel({'$y$'},'interpreter','latex')
[DX,DY] = gradient(Z,.2,.2);
hold on
quiver(X,Y,DX,DY,0.5)

Akzeptierte Antwort

Seyyed Mohammad Saeed Damadi
Axis equal cannot solve the problem. I solved it on my own. Here is the codes:
x=-pi:0.2:pi;
figure
y1=sin(x);
plot(x,y1,'linewidth',2)
xlim([-pi pi])
xlabel({'$x$'},'interpreter','latex')
ylabel({'$y$'},'interpreter','latex')
v1=-cos(x);
v2=ones(1,length(x));
hold on
quiver(x,y1,v1,v2,0.2)

Weitere Antworten (1)

Kim Folmer Andersen
Kim Folmer Andersen am 11 Jan. 2018
try; axis equal

Kategorien

Mehr zu 2-D and 3-D Plots finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by