Plotting two regions such that they can be identified nicely

6 ビュー (過去 30 日間)
Siddhartha Ganguly
Siddhartha Ganguly 2023 年 6 月 9 日
回答済み: Rahul 2023 年 6 月 15 日
Hi I have two regions in 2D which looks almost the same (one is a little bigger than the other) and I want to plot them so that they can be identified separately. The mat file and the code is attached:
x1 = -1.5:0.02:1.5;
x2 = -1.5:0.02:1.5;
[X1,X2] = meshgrid(x1,x2);
load('U_FF_h_p_02.mat')
load('U_FF_YMP_h_p_02 (1).mat')
figure(1)
%%
surf(X1,X2,U, 'FaceAlpha', 0.1)
view(2)
figure(2)
surf(X1,X2,U_Y, 'FaceAlpha', 1)
view(2)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
I want to plot them on the same figure and when I do this they look the same and can't really be distinguished. Any ideas?
  1 件のコメント
Mathieu NOE
Mathieu NOE 2023 年 6 月 9 日
I don't understand what you want
if you plot each one on a separate plot , they can be distinguished - or subplots / stacked plots same story
or have separate colormap ?
in which way do you want to make them distinguishable ?

サインインしてコメントする。

回答 (1 件)

Rahul
Rahul 2023 年 6 月 15 日
One method to make the 2 regions more easily distinguishable can be to use different colors or shading for each region. This can be adjusted using the FaceColor property of the surface objects. The below given code is a good representation for this.
x1 = -1.5:0.02:1.5;
x2 = -1.5:0.02:1.5;
[X1, X2] = meshgrid(x1, x2);
load('U_FF_h_p_02.mat')
load('U_FF_YMP_h_p_02 (1).mat')
color1 = [0, 0.5, 1];
color2 = [1, 0.5, 0];
figure;
surf(X1, X2, U, 'FaceColor', color1, 'FaceAlpha', 0.5);
hold on;
surf(X1, X2, U_Y, 'FaceColor', color2, 'FaceAlpha', 0.5);
view(2);
grid on;
c = colorbar;
c.Label.String = 'Value';
title('Comparison of U and U_Y');
xlabel('X1');
ylabel('X2');
zlabel('U');
Here I have tweaked the code given by adding FaceColor values to the surf function and adjusting the transparency for better visualization. color1 and color2 are the color values (blue and orange) used to highlight the region depicting U and U_Y respectively.
The hold on command keeps all plotted surfaces in the same figure and grid on command will add a grid in the plot. A colorbar is also included to show corresponding levels of the surfaces.

カテゴリ

Help Center および File ExchangeSurface and Mesh Plots についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by