Effacer les filtres
Effacer les filtres

bars with mean and std on them

3 vues (au cours des 30 derniers jours)
talayeh ghodsi
talayeh ghodsi le 9 Déc 2020
Modifié(e) : Timo Dietz le 10 Déc 2020
hi every body. i need to plot bar of 2 groups in x axis each containing 3 type of datas with mean and std on them. but i have error in the following code. could anybody help me please?
Y=[32.1 21.3 53.4;10.4 9.1 23.5]; %% mean values
X = categorical({'whole V','Proposed method'});
X = reordercats(X,{'whole V','Proposed method'});
Xv = 1:numel(X);
STD_low=[0.73 0.217 0.529;0.161 0.112 0.131]; %% standard deviations
xtips1 = b(1).XEndPoints;
ytips1 = b(1).YEndPoints;
for k1 = 1:size(Y,2)
ctr(k1,:) = bsxfun(@plus, b(k1).XData, b(k1).XOffset');
ydt(k1,:) = b(k1).YData;
hold on
heb = errorbar(ctr, ydt, STD_low.', STD_high.', '.k');
for k = 1:numel(heb)
heb(k).MarkerSize = 1;
labels1 = string(b(1).YData);
xtips2 = b(2).XEndPoints;
ytips2 = b(2).YEndPoints;
labels2 = string(b(2).YData);
legend('MAD', 'HD','DSC');
xlabel('Method of best match slice achievement')
ylabel('Mean&Standard deviation (mm)')

Réponse acceptée

Timo Dietz
Timo Dietz le 10 Déc 2020
Modifié(e) : Timo Dietz le 10 Déc 2020
replace the XEndPoints/YEndPoints by XData(end)/YData(end):
xtips1 = b(1).XData(end);
ytips1 = b(1).YData(end);
Btw, xticklabels(X) won't work. Either set xticklabels('auto') or xticklabels(b(1).XData)

Plus de réponses (0)


En savoir plus sur Data Distribution Plots dans Help Center et File Exchange


Community Treasure Hunt

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

Start Hunting!

Translated by