Colorbar title is beyond the axis
27 views (last 30 days)
Show older comments
Hi,
Does anyone can help me figure out why my colorbar title is always partly outside of the axis?
Below is my code:
scatter(app.ViewDEM,X_1,Y_1,200,Z_1,'s','filled')
colormap(app.ViewDEM)
d = colorbar(app.ViewDEM);
d.Label.String = 'Elevation [m]';
Thank you very much!
3 Comments
Adam Danz
on 19 Jun 2019
Edited: Adam Danz
on 19 Jun 2019
I tried to recreate this problem by setting a UIAxes in App Designer very close to the right edge of the UI figure and then adding a colorbar to the right with a y axis label but the axes adjusts accordingly and I cannot recreate the problem.
Could you provide a bit more code? I'm curious if you're setting the axis position.
Accepted Answer
Adam Danz
on 20 Jun 2019
I was able to reproduce the problem after embedding the code you provided (copied below) within an app. It looks like a bug and should be reported. I thought of two workarounds listed below.
% Your example code that reproduces the problem
scatter(app.UIAxes4,X_1,Y_1,200,Z_1,'s','filled')
% colormap(app.UIAxes4) %Commented out; this just returns the current colormap
d = colorbar(app.UIAxes4);
d.Label.String = 'Elevation [m]';
d.Label.FontSize = 10;
hold on
% Workaround #1
% Move the colorbar y axis label to the left.
d.AxisLocation = 'in'
% Workaround #2
% Expand the width of the outer position of the axes a bit
% Look as your axes' current width value and chose a value slightly higher (+20 ?)
app.UIAxes.OuterPosition(3) = 500; % Change this value to fit your needs
3 Comments
Adam Danz
on 20 Jun 2019
Nice teamwork!
A better way to set the title of the colorbar:
title(d, 'Elevation [m]', 'FontSize', 10)
More Answers (0)
See Also
Categories
Find more on Colorbar 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!