Borrar filtros
Borrar filtros

boxplot and how to change x-axis

84 visualizaciones (últimos 30 días)
Muhlbauer
Muhlbauer el 3 de Mzo. de 2011
Hi,
I have a matrix (100,7) with data which I want to plot with boxplot. boxplot(matrix) does the job but I haven't figured out yet how I can change the x-axis. Now it draws a box for each column of the matrix. So, the labels go from 1 to 7. I want to replace 1 to 7 with elements provided by another vector (with 7 elements). How can I do that?

Respuestas (3)

Oleg Komarov
Oleg Komarov el 3 de Mzo. de 2011
Use the labels option as described in the docs of boxplot:
X = randn(100,4);
boxplot(X,'Labels',{'one','two','three','four'})
Oleg
  2 comentarios
Muhlbauer
Muhlbauer el 4 de Mzo. de 2011
All right. Your suggestion works but is a little bit cumbersome.
If the dimensions of X would change I would also have to adapt the labels...
The doc says that I can pass a numeric vector. However, that doesn't work and gives the error
Error using ==> boxplot at 205
Incorrect number of box labels.
even if the number of labels is 7.
Oleg Komarov
Oleg Komarov el 4 de Mzo. de 2011
Can you show the code that gives you the error?
I don't get any error if I pass a numeric vector of labels, 7, 5 or whatever they are as long as they match the number of columns of my data

Iniciar sesión para comentar.


Walter Roberson
Walter Roberson el 3 de Mzo. de 2011
See the example of a few minutes ago posted by a different user, here

Muhlbauer
Muhlbauer el 4 de Mzo. de 2011
It seems there is a bug in boxplot on line 204 in order to support label input from a given input vector.
Adding ~(isvector(labels) && numel(labels)==n) to the if statement beginning on line 202 fixes this issue!

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by