How to set common colorbar for multiplots?
Mostrar comentarios más antiguos
Hi all,
I am using subplots to plot multiple contour plots in a single figure using for loop and using colorbar with 'Position' but it doesn't give the common values for all the plots. I have tried different solution which was given to other Matlab users but none worked.
fig=figure(1)
clf
for i=1:24
subplot(6,4,i)
contourf(x,y,z)
end
h=axes(fig,'visible','off');
h.Title.Visible='on';
h.XLabel.Visible='on';
h.YLabel.Visible='on';
ylabel(h,'yaxis','FontWeight','bold');
xlabel(h,'xaxis','FontWeight','bold');
title(h,'title');
colormap(jet)
c=colorbar;
c.Position = [0.93 0.168 0.022 0.7];
Can you help me with this problem?
Thanks in advance!
Respuesta aceptada
Más respuestas (1)
tcl = tiledlayout(3,4);
for i = 1:prod(tcl.GridSize)
nexttile()
[X,Y,Z] = peaks(2+i);
contourf(X,Y,Z)
clim([-7,6]) % Important! Set the same color limits
end
cb = colorbar();
cb.Layout.Tile = 'east'; % Assign colorbar location
2 comentarios
Diana Grisolia
el 11 de Abr. de 2024
Thnks! It worked perfectly!!
Amirmohammad
el 23 de En. de 2026
Perfect solution for me too! Thanks!
Categorías
Más información sobre Subplots en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


