Change colour on grid
2 次查看(过去 30 天)
显示 更早的评论
Hi,
How would I change the colour of the little square island in my waves simulation?

0 个评论
采纳的回答
Mathieu NOE
2025-4-23
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 个评论
更多回答(1 个)
Constantino Carlos Reyes-Aldasoro
2025-4-23
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.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Orange 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!