how to increasse Bar3 plot bar thickness in both axies

1 view (last 30 days)
i am useing this code for combined my drive cycle with value of 30*80
and at the reult i got slim bar plot as output and i want to incresse thickness of bar in both axis so at the end it will look like a Bar.
i am send you my code if any have suggestion regarding this:
dp_ax=5:10:800;
vfl_ax=0.5:1:30;
figure
width=0.1;
h=bar3(vfl_ax,Data_combined);
Xdat=get(h,'XData');
title('EWP operating profile for combined drive cycle')
xlabel('Pressure diffrance [mbar]')
ylabel('Volume flow rate [L/min]')
axis tight
for ii=1:length(Xdat)
Xdat{ii}=dp_ax(ii)*ones(size(Xdat{ii}));
set(h(ii),'XData',Xdat{ii});
end

Answers (2)

Cris LaPierre
Cris LaPierre on 3 May 2021
You could try using the 'Width' name value pair (see this example), but I think the bigger issue is the scale of your X vs Y axes. Pressure (Y) ranges fro 0-800 while Volume (X) ranges from 0-30. Each bar can have a maximum with of 1, which corresponds to the width of a unit increase in the corresponding X or Y axis. A unit step in X is much bigger than a unit step in Y. This is causing your bars to look skinny.
It appears your bars are all space 10 units apart in Y. Perhaps you can divide your Y values by 10 so the bars will all be spaced 1 unit apart instead?

Alon Slapak
Alon Slapak on 30 Sep 2023
ax = gca;
ax.PlotBoxAspectRatio = [1 0.5 1];

Community Treasure Hunt

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

Start Hunting!