MATLAB Answers

Surfplot with surface color as a function of gradient (slope)

76 views (last 30 days)
Hi,
I would like to plot a surface plot, where i would like to vary the surface color based on the gradient of z instead of its magnitude. Is there a way to do it?
Thanks and Regards

Accepted Answer

Karthik  Vemireddy
Karthik Vemireddy on 8 Aug 2018
Edited: Karthik Vemireddy on 9 Aug 2018
found the answer.
surf(X,Y,Z,C) additionally specifies the surface color.
[dfdx,dfdy] = gradient(Z);
surf(x,y,Z,sqrt(dfdx.^2 + dfdy.^2))
colorbar
does the trick...
Source and further Info can be found here

More Answers (1)

Yuvaraj Venkataswamy
Yuvaraj Venkataswamy on 8 Aug 2018
if true
surf(X,Y,Z)
end
surf(X,Y,Z) creates a three-dimensional surface plot. The function plots the values in matrix Z as heights above a grid in the x-y plane defined by X and Y. The function also uses Z for the color data, so color is proportional to height.

Community Treasure Hunt

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

Start Hunting!

Translated by