How to plot just a colorbar without plot?

114 views (last 30 days)
Mr M.
Mr M. on 23 Jul 2018
Commented: Turlough Hughes on 4 Jan 2022
I would like to plot just a colorbar on a subplot without real figure. I can do this, but I want to shrink the figure area. How to make zero figure width and wide colorbar?
  4 Comments
Mr M.
Mr M. on 26 Jul 2018
I want a colorbar without graph/plot, and not on the side.
jonas
jonas on 26 Jul 2018
Can you draw an image in MSpaint of what you want?

Sign in to comment.

Answers (1)

Benjamin Kraus
Benjamin Kraus on 26 Jul 2018
A colorbar must be attached to an axes, so you have (at least) two options:
  1. Create an axes, attach a colorbar, then make the axes invisible.
  2. Create an axes, attach a colorbar, then move the axes and colorbar separately.
For example:
ax = axes;
c = colorbar(ax);
ax.Visible = 'off';
  3 Comments
Benjamin Kraus
Benjamin Kraus on 17 Dec 2018
The Visible property on axes controls the visibility of the axes (the backdrop, the rulers, the ticks, etc.) but does not control the visibility of the plots within the axes (lines, bar graphics, etc.). Is this the issue you are seeing? If not, please post some example code along with a screenshot of what you are seeing, and someone should be able to help you.
Turlough Hughes
Turlough Hughes on 4 Jan 2022
One can also center the colorbar in the figure as follows:
hf = figure('Units','normalized');
colormap turbo
hCB = colorbar('north');
set(gca,'Visible',false)
hCB.Position = [0.15 0.3 0.74 0.4];
hf.Position(4) = 0.1000;

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!