How do I group boxplots by modifying the X locations?

7 vues (au cours des 30 derniers jours)
Ian
Ian le 18 Fév 2011
Commenté : Aamir Ansari le 2 Août 2021
Is there a way to set the 'X' coordinates of several boxplots?
For instance something similar to...
X = [1.2 1.8 3.2 3.8 5.2 5.8];
boxplot(X, Y)
so that it would look like groups of boxplots are set closer together?

Réponse acceptée

Patrick Kalita
Patrick Kalita le 18 Fév 2011
Perhaps you are looking for the positions option?
X = [1.2 1.8 3.2 3.8 5.2 5.8];
Y = rand(100, 6);
boxplot(Y, 'positions', X, 'labels', X)
  1 commentaire
Matt Tearle
Matt Tearle le 18 Fév 2011
how the heck did I not know about that? ::headdesk::

Connectez-vous pour commenter.

Plus de réponses (2)

Matt Tearle
Matt Tearle le 18 Fév 2011
You can cluster groups together using the 'factorgap' option. Would that do what you want?
% make some fake data
x = rand(200,1);
z = bsxfun(@plus,repmat(x,1,5),-0.1:0.1:0.3);
% standard boxplot
boxplot(z)
% make some grouping labels
g1 = repmat([1 1 1 2 2],200,1);
g2 = repmat('abcab',200,1);
% reshape everything into columns
zv = z(:);
gp1 = g1(:);
gp2 = g2(:);
% boxplot with groupings grouped!
boxplot(zv,{gp1,gp2},'factorgap',[50,0])
  3 commentaires
Matt Tearle
Matt Tearle le 18 Fév 2011
Apparently:
>> worldpeace
??? Undefined function or variable 'worldpeace'.
Aamir Ansari
Aamir Ansari le 2 Août 2021
We can try!!

Connectez-vous pour commenter.


Ian
Ian le 18 Fév 2011
Yes, the 'positions' one is what i was looking for. Thanks for the responses.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by