Coloring Function for mesh

Hey,
In default, when you make a graph via mesh(), the colouring scheme is a gradient from cold to hot as the z-axis increases in value (as z increases, the colour gets warmer). Instead, I'd like the gradient to work as a function of a 2d distance (specifically, as x^2+y^2 increases, the colour should get colder). Is there a relatively simple way to do this? Thanks!

Answers (2)

Sure:
L = membrane; %sample data
ax = mesh(L); %mesh it!
sz = size(L,1); %how big?
set(ax,'cdata',bsxfun(@hypot,(1:sz)',1:sz),'cdatamapping','scaled'); %what color?
colormap(flipud(jet)); %colder is bigger
SGUNITN
SGUNITN on 2 Dec 2020
Edited: SGUNITN on 2 Dec 2020
I am trying to plot features vs. observation (2-D data with 60 rows and 14 columns). Is it possible to use different colors for each features?

Categories

Find more on Deep Learning Toolbox in Help Center and File Exchange

Asked:

Eli
on 21 Jun 2012

Edited:

on 2 Dec 2020

Community Treasure Hunt

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

Start Hunting!