I want to remove the blank space between the first two bars and the last two bars. Can anyone help please?

2 Ansichten (letzte 30 Tage)
I want to remove the blank space in the middle of this figure. Can anyone help please?
This is my code:
figure(30)
x1=T_Smooth{1:4,8};
M1=[T_Smooth{1,5} T_Smooth{1,7}; T_Smooth{2,5} T_Smooth{2,7};T_Smooth{3,5} T_Smooth{3,7};T_Smooth{4,5} T_Smooth{4,7}];
timetoadd1=[T_Smooth{1,9};T_Smooth{2,9};T_Smooth{3,9};T_Smooth{4,9}];
timetoadd2=[T_Smooth{1,11};T_Smooth{2,11};T_Smooth{3,11};T_Smooth{4,11}];
h1=bar(x1,M1,1);
xtips1=h1(1).XEndPoints;
ytips1=h1(1).YEndPoints;
labels1=string(timetoadd1);
text(xtips1,ytips1,labels1,'HorizontalAlignment','center','VerticalAlignment','bottom')
xtips2=h1(2).XEndPoints;
ytips2=h1(2).YEndPoints;
labels2=string(timetoadd2);
text(xtips2,ytips2,labels2,'HorizontalAlignment','center','VerticalAlignment','bottom')
xlabel('Date/Time of the sample')
ylabel('Peak value of concentration (nmol/l)')
ylim([0 130])
legend({'Melatonin','Cortisol'},'Location','northwest')
title('Maximum melatonin & cortisol concentration for participant 1')
This is the figure I mean:
  3 Kommentare
Newbie
Newbie am 14 Sep. 2021
T_Smooth=rowfun(@myfun3,T,"InputVariables",["Date/Time_of_sample" "Smooth_Melatonin_concentration" "Smooth_Cortisol_concentration"],"GroupingVariables",["Participant_ID" "Sample_ID"],"OutputVariableNames",["Date/Time_Peak_Mel" "Peak_Mel" "Date/Time_Peak_Cort" "Peak_Cort"]);

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

the cyclist
the cyclist am 14 Sep. 2021
Instead of using the dates in x1 to define the bar positions along the X axis, you could use
h1=bar(M1); % instead of h1=bar(x1,M1);
which will create evenly spaced bars along the X axis.
Then label the X ticks with the date:
set(gca,'XTickLabel',{'Apr 24','Apr 25','May 1','May 2'})

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by