How to make a surface plot with colors for three variables

1 view (last 30 days)
Joel Schelander
Joel Schelander on 24 Apr 2021
Edited: Joel Schelander on 25 Apr 2021
I want to plot how the increase in power demand AAG of households relates to the number of inhabitants AAI. I have 36 houses and investigates the increase for the combinations of 1,2,3...36 houses (y)
I have tried making plots, but the only thing I can come up with is scatter plots, but then the number of households. Since I combine 2,3,4... 36 households I will have 36 scatter plots if I do like this
but I want one 2D surface plot with colors. Inserted the data for 1 and 2 households to make things more clear.
for y=1:2
xx=cell(length(AAG{y}),1);
I=cell(length(AAG{y}),1);
for o=1:length(AAG{y})
xx{o} =AAG{y}{o};
I{o}=AAI{y}(o);
end
for k1 = 1:length(AAG{y})
scatter(ones(1,numel(xx{k1}))*y, xx{k1},ones(1,numel(xx{k1}))*I{k1},'s','Linewidth',10)
end
end
colormap(parula(100));
colorbar;
h=colorbar;
ylabel(h, 'Number of inhabitants')
caxis([2 10])
ylim([0 20])
xlim([0 3])
xlabel('Nr of households being combined')
ylabel('Increase in rated power')
  3 Comments
Jan
Jan on 25 Apr 2021
Sinmplify your code:
% Replace:
xx=cell(length(AAG{y}),1);
I=cell(length(AAG{y}),1);
for o=1:length(AAG{y})
xx{o} =AAG{y}{o};
I{o}=AAI{y}(o); % Do you really want a nested cell?
end
% by:
xx = AGG{y};
I = AAI{y};
The actual question is still not getting clear.

Sign in to comment.

Answers (0)

Products


Release

R2017b

Community Treasure Hunt

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

Start Hunting!