How to implement gradient fill based on Waterfall command?
3 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Use the Waterfall command to draw a picture as shown in the following figure:
[X,Y] = meshgrid(-3:.125:3);
Z = peaks(X,Y);
C = gradient(Z);
waterfall(X,Y,Z,C)
colorbar
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1161403/image.png)
How can I write code to achieve gradient filling, so that the above figure has the rendering effect of the following figure?
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1161408/image.jpeg)
Thanks a lot.
0 Commenti
Risposte (1)
Saffan
il 30 Ago 2023
Hi,
To accomplish this, you can use the “surf” method as shown in the following code snippet:
[X, Y] = meshgrid(-3:.125:3);
Z = peaks(X, Y);
% Calculate gradient
[dx, dy] = gradient(Z);
gradientMagnitude = sqrt(dx.^2 + dy.^2);
% Plot using surf
surf(X, Y, Z, gradientMagnitude, 'EdgeColor', 'none');
colormap('jet');
colorbar;
The “gradientMagnitude” is used as the color data for the surface, resulting in a gradient filling effect.
Refer to this for more information:
0 Commenti
Vedere anche
Categorie
Scopri di più su Surface and Mesh Plots in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!