Remove white space around a horizontal bar

I want to remove the vertical space above and below the graph, but I cannot find the function for that. Could someone please help?
I am using the "barh" function to create these figures.
My figure looks like this:
I want to make it look like this:
remove the not used white space, but the legend should be there.
Thanks
Aksh

1 Comment

You can adjust the y limits via ylim but in that case the axes won't come in, the bar will be stretched out to fill the gap.

Sign in to comment.

Answers (1)

Adjusting the bar width should work. Just choosing a big number is maybe good enough.
x = [0]; % data
y = [15 20 5]; % data
figure(); % create figure
width=550; height=60; % configure dimensions
set(gcf,'position',[0, 0, width, height])
barh(x, y, 100, 'stacked') % plot with adjusted bar width (= 100)
--EDIT--
And if you want to remove the numbers and ticks you can do (source):
figure(); % create figure
width=550; height=60; % configure dimensions
set(gcf,'position',[0, 0, width, height])
barh(x, y, 100, 'stacked') % plot with adjusted bar width (= 100)
set(gca, 'box','off','XTickLabel',[],'XTick',[],'YTickLabel',[],'YTick',[])

Products

Release

R2021a

Tags

Asked:

on 27 Jul 2023

Edited:

on 27 Jul 2023

Community Treasure Hunt

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

Start Hunting!