How to plot the figure with 3 variables in 2d, with the value of z is proportional to the color?

46 views (last 30 days)
Dear Friends
I would like to plot the figure with 3 variables in 2d, with the value of z is proportional to the color as the figure attached. where X(1 x N); Y(1 x N) and Z(N*N) matrix. I want to have a scatter plot as an attached figure. Thank you for your attention
Code
load('w.mat');load('k.mat');load('Detal_E.mat');
w0=6.266963343377698e+05;
[X,Y] = meshgrid(w/w0,k);
h=surf(X, Y,Detal_E*1e6);
xlabel('w')
ylabel(' k')
zlabel('Detal E')
myColorMap = jet(250);
myColorMap(1,:) = 1;
colormap(myColorMap);
colorbar
shading interp;
view(2)

Accepted Answer

David Hill
David Hill on 2 Apr 2021
m=min(Detal_E);
M=max(Detal_E);
c=(Detal_E-m)/(M-m)*9+1;
scatter(X,Y,25,c,'filled');
  3 Comments
David Hill
David Hill on 5 Apr 2021
load('w.mat');load('k.mat');load('Detal_E.mat');
w0=6.266963343377698e+05;
[X,Y] = meshgrid(w/w0,k);
m=min(Detal_E,[],'all');
M=max(Detal_E,[],'all');
c=(Detal_E-m)/(M-m)*9+1;
scatter(X(:),Y(:),5,c(:),'filled');

Sign in to comment.

More Answers (0)

Categories

Find more on Line Plots in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!