Change colour on grid

5 visualizzazioni (ultimi 30 giorni)
Andrew
Andrew il 23 Apr 2025
Commentato: Mathieu NOE il 24 Apr 2025
Hi,
How would I change the colour of the little square island in my waves simulation?

Risposta accettata

Mathieu NOE
Mathieu NOE il 23 Apr 2025
hello Andrew
one solution is to overlay two mesh plots and ask for the second to have a single bright color (here red)
either only the mesh is red but you can also have plain (face) color as shown in the second example :
[X,Y] = meshgrid(-15:.5:15);
R = sqrt(X.^2 + Y.^2) + eps;
Z = sin(R).*R;
[m,n] = size(Z);
% create inner flat square
ind = round(m/2) + (-10:10);
Z(ind,ind) = 0;
figure
mesh(X,Y,Z)
hold on
m = mesh(X(ind,ind),Y(ind,ind),Z(ind,ind));
set(m,'Edgecolor','r');
% set(m,'Facecolor','r');
view(-30,75)
hold off
figure
mesh(X,Y,Z)
hold on
m = mesh(X(ind,ind),Y(ind,ind),Z(ind,ind));
set(m,'Edgecolor','r');
set(m,'Facecolor','r');
view(-30,75)
hold off
  2 Commenti
Andrew
Andrew il 24 Apr 2025
Spostato: Mathieu NOE il 24 Apr 2025
That is great thank you
Mathieu NOE
Mathieu NOE il 24 Apr 2025
as always, my pleasure

Accedi per commentare.

Più risposte (1)

Constantino Carlos Reyes-Aldasoro
The colour is going to be related to the values of whatever you are plotting, e.g.,
L = 160*membrane(1,100);
mesh(L)
colorbar
The blue is due to the values in the square region, and it is related to the colormap that you use. You may play with the colormaps to change those values but you will be affecting all the values.
figure
mesh(L)
colorbar
colormap jet
Hope this helps.

Prodotti


Release

R2024b

Community Treasure Hunt

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

Start Hunting!

Translated by