You can set the xticks and their labels as shown in following code
days = [0 31 28 31 30 31 30 31 31 30 31 30 31];
cum_days = cumsum(days);
xv = movmean(cum_days, 2, 'Endpoints', 'discard');
xticks(xv);
xticklabels({'January', 'February', 'March', 'April', 'May', 'June', ...
'July', 'August', 'September', 'October', 'November', 'December'})
It will place the labels at middle of each month. Note that you might also need to rotate the labels to display them properly. In that case, use
ax = gca;
ax.XTickLabelRotation = -45; % 45 is rotation angle in clockwise direction.
