Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

bar

Gráfico de barras

Descripción

ejemplo

bar(y) crea un gráfico de barras con una barra para cada elemento de y. Si y es una matriz, bar agrupa las barras de acuerdo con las filas de y.

ejemplo

bar(x,y) traza las barras en las ubicaciones especificadas por x.

ejemplo

bar(___,width) establece el ancho de barra relativo, que controla la separación de las barras dentro de un grupo. Especifique width como valor escalar. Utilice esta opción con cualquiera de las combinaciones de argumentos de entrada en las sintaxis anteriores.

ejemplo

bar(___,style) especifica el estilo de los grupos de barras. Por ejemplo, utilice 'stacked' para mostrar cada grupo como una barra con varios colores.

ejemplo

bar(___,color) establece el color de todas las barras. Por ejemplo, utilice 'r' para obtener barras rojas.

ejemplo

bar(___,Name,Value) modifica el gráfico de barras mediante uno o varios argumentos de par nombre-valor. La configuración se aplica a todas las barras trazadas. Por ejemplo, utilice 'EdgeColor','black' para añadir a todas las barras un contorno negro.

ejemplo

bar(ax,___) realiza el trazado en los ejes especificados por ax en lugar de en los ejes actuales (gca). La opción ax puede preceder a cualquiera de las combinaciones de argumentos de entrada de las sintaxis anteriores.

ejemplo

b = bar(___) devuelve uno o varios objetos Bar. Si y es un vector, bar crea un objeto Bar. Si y es una matriz, bar crea un objeto Bar para cada columna. Utilice b para realizar modificaciones futuras en los objetos Bar una vez creados.

Ejemplos

contraer todo

y = [75 91 105 123.5 131 150 179 203 226 249 281.5];
bar(y)

Especifique las ubicaciones de las barras a lo largo del eje x.

x = 1900:10:2000;
y = [75 91 105 123.5 131 150 179 203 226 249 281.5];
bar(x,y)

Establezca el ancho de cada barra en un 40 % del espacio total disponible para cada barra.

y = [75 91 105 123.5 131 150 179 203 226 249 281.5];
bar(y,0.4)

Muestre cuatro grupos de tres barras.

y = [2 2 3; 2 5 6; 2 8 9; 2 11 12];
bar(y)

Muestre una barra para cada fila de la matriz. La altura de cada barra es la suma de los elementos de la fila.

y = [2 2 3; 2 5 6; 2 8 9; 2 11 12];
bar(y,'stacked')

Cree un gráfico de barras con valores categóricos a lo largo del eje x. De forma predeterminada, las categorías se muestran en orden alfabético.

c = categorical({'apples','pears','oranges'});
prices = [1.23 0.99 2.3];
bar(c,prices)

Cree una figura con dos subgráficos. En el subgráfico superior, trace un gráfico de barras. En el subgráfico inferior, trace un gráfico de barras apiladas de los mismos datos.

y = [1 2 3; 4 5 6];
ax1 = subplot(2,1,1);
bar(ax1,y)

ax2 = subplot(2,1,2); 
bar(ax2,y,'stacked')

Cree un gráfico de barras con barras rojas.

y = [75 91 105 123.5 131 150 179 203 226 249 281.5];
bar(y,'r')

Defina el color interior de la barra y el color del contorno utilizando tripletes RGB. Defina el ancho del contorno de la barra.

y = [75 91 105 123.5 131 150 179 203 226 249 281.5];
bar(y,'FaceColor',[0 .5 .5],'EdgeColor',[0 .9 .9],'LineWidth',1.5)

Controle los colores de las barras individuales mediante la propiedad CData del objeto Bar.

Cree un gráfico de barras y asigne el objeto Bar a una variable. Establezca la propiedad FaceColor del objeto Bar como 'flat' para que el gráfico utilice los colores definidos en la propiedad CData. De forma predeterminada, la propiedad CData se rellena con una matriz de los valores de color RGB predeterminados. Para cambiar un color concreto, cambie la fila correspondiente de la matriz. Por ejemplo, cambie el color de la segunda barra.

b = bar(rand(10,1));
b.FaceColor = 'flat';
b.CData(2,:) = [.5 0 .5];

Cree un gráfico de barras que utilice colores del mapa de colores estableciendo la propiedad FaceColor como 'flat'. A continuación, establezca la propiedad CData para cada objeto Bar como un entero.

y = [1 3 5; 3 2 7; 3 4 2];
b = bar(y,'FaceColor','flat');
for k = 1:size(y,2)
    b(k).CData = k;
end

Cree un gráfico de barras con una entrada de matriz de tres columnas y devuelva los tres objetos de la serie de barras. bar crea una serie de barras para cada columna de la matriz.

y = [2 4 6; 3 4 5];
b = bar(y);

Cambie las propiedades de una serie de barras específica mediante la indexación en el array de objetos. Por ejemplo, cambie las propiedades de las barras que representan la segunda columna de y mediante b(2). A partir de la versión R2014b, se puede utilizar la notación de puntos para establecer propiedades. Si está utilizando una versión anterior, utilice la función set en su lugar.

b(2).LineWidth = 2;
b(2).EdgeColor = 'red';

Argumentos de entrada

contraer todo

Valores de x, especificados como un vector o una matriz. Si x e y son ambos vectores, deben ser de igual longitud. Si x e y son ambas matrices, deben ser de igual tamaño. Si x es un vector e y es una matriz, la longitud de x debe ser igual al número de filas de y.

Los valores de x no tienen que estar en orden, pero no pueden contener valores duplicados. Si x es una matriz, no puede contener valores duplicados entre columnas.

Ejemplo: 1:10

Tipos de datos: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | categorical | datetime | duration

Valores de y, especificados como un vector o una matriz.

  • Si y es un vector, bar traza una barra para cada elemento. La función bar trata todos los vectores como vectores de columna.

  • Si y es una matriz, bar agrupa las barras de acuerdo con las filas de y.

Ejemplo: [10 8 5 7 3 9 1]

Tipos de datos: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | duration

Anchura de la barra, especificado como una fracción del espacio total disponible para cada barra. El valor predeterminado de 0.8 significa que el ancho de barra es el 80 % del espacio desde la barra anterior a la barra siguiente, con un 10 % de ese espacio en cada lado.

Si el ancho es 1, las barras de un grupo se tocan entre sí.

Ejemplo: 0.5

Tipos de datos: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Estilo del grupo de barras, especificado por uno de estos valores.

EstiloPropósito

'grouped'

Mostrar un grupo por cada fila de y.

  • Si y es una matriz de m por n, bar muestra m grupos de n barras verticales, donde m es el número de filas y n es el número de columnas de y.

  • Si y es un vector de longitud n, bar muestra un grupo de n barras. La función bar trata todos los vectores como vectores de columna.

'stacked'

Mostrar una barra por cada fila de y.

  • Si y es una matriz de m por n, bar muestra m barras, donde la altura de cada barra es la suma de los elementos de la fila. Cada barra tiene varios colores. Los colores corresponden a elementos distintos y muestran la contribución relativa que cada elemento de fila realiza a la suma total.

  • Si y es un vector de longitud n, bar muestra n barras. La función bar trata todos los vectores como vectores de columna.

'histc'

Mostrar el gráfico en formato de histograma, en el que las barras se tocan entre sí. Esta opción crea un objeto Patch en lugar de un objeto Bar. No se pueden especificar argumentos de par nombre-valor al utilizar esta opción.

'hist'

Mostrar el gráfico en formato de histograma, pero centrando cada barra sobre las marcas de x en lugar de hacer que las barras abarquen x marcas, como con la opción histc. Esta opción crea un objeto Patch en lugar de un objeto Bar. No se pueden especificar argumentos de par nombre-valor al utilizar esta opción.

Color de barra, especificado como uno de los colores de esta tabla.

ColorColor
'b'Azul
'r'Rojo
'g'Verde
'c'Cian
'm'Magenta
'y'Amarillo
'k'Negro
'w'Blanco

Objeto de ejes. Si no se especifica un eje, bar utiliza el eje actual para el gráfico de barras.

Argumentos de par nombre-valor

Ejemplo: 'EdgeColor','g' especifica un contorno verde alrededor de las barras.

Las propiedades de Bar enumeradas aquí son solo un subconjunto. Para obtener una lista completa, consulte Bar Properties.

Nota

No se pueden especificar pares Name,Value cuando se utilizan las opciones de estilo de grupo de barras 'hist' o 'histc'.

Color del contorno, especificado como triplete RGB, 'flat' o una de las opciones de color enumeradas en la tabla. Si hay 150 barras o menos, el valor predeterminado es [0 0 0], que corresponde al negro. Si hay más de 150 barras, el valor predeterminado es 'none'.

A partir de la versión R2017b, la opción 'flat' utiliza los valores de CData para colorear los bordes. En versiones anteriores, la opción 'flat' coloreaba los bordes utilizando colores del mapa de colores.

Para un color personalizado, especifique un triplete RGB. Un triplete RGB es un vector de fila de tres elementos cuyos elementos especifican las intensidades de los componentes rojo, verde y azul del color. Las intensidades deben estar en el rango [0,1]; por ejemplo, [0.4 0.6 0.7]. Si lo prefiere, puede especificar algunos colores comunes por su nombre. Esta tabla muestra las opciones de nombre de color largo y corto, y los valores equivalentes de triplete RGB.

OpciónDescripciónTriplete RGB equivalente
'red' o 'r'Rojo[1 0 0]
'green' o 'g'Verde[0 1 0]
'blue' o 'b'Azul[0 0 1]
'yellow' o 'y'Amarillo[1 1 0]
'magenta' o 'm'Magenta[1 0 1]
'cyan' o 'c'Cian[0 1 1]
'white' o 'w'Blanco[1 1 1]
'black' o 'k'Negro[0 0 0]
'none'Sin colorNo aplicable

Ejemplo: b = bar(1:10,'EdgeColor','red')

Ejemplo: b.EdgeColor = [0 0.5 0.5];

Ejemplo: b.EdgeColor = 'flat';

Color de relleno, especificado como triplete RGB, 'flat' o una de las opciones de color enumeradas en la tabla. La opción 'flat' utiliza los valores de CData para colorear las caras.

Para un color personalizado, especifique un triplete RGB. Un triplete RGB es un vector de fila de tres elementos cuyos elementos especifican las intensidades de los componentes rojo, verde y azul del color. Las intensidades deben estar en el rango [0,1]; por ejemplo, [0.4 0.6 0.7]. Si lo prefiere, puede especificar algunos colores comunes por su nombre. Esta tabla muestra las opciones de nombre de color largo y corto, y los valores equivalentes de triplete RGB.

OpciónDescripciónTriplete RGB equivalente
'red' o 'r'Rojo[1 0 0]
'green' o 'g'Verde[0 1 0]
'blue' o 'b'Azul[0 0 1]
'yellow' o 'y'Amarillo[1 1 0]
'magenta' o 'm'Magenta[1 0 1]
'cyan' o 'c'Cian[0 1 1]
'white' o 'w'Blanco[1 1 1]
'black' o 'k'Negro[0 0 0]
'none'Sin colorNo aplicable

A partir de la versión R2017b, el valor predeterminado es un triplete RGB de la propiedad ColorOrder de los ejes. En versiones anteriores, el valor predeterminado era 'flat' y los colores se basaban en el mapa de colores.

Ejemplo: b = bar(1:10,'FaceColor','red')

Ejemplo: b.FaceColor = [0 0.5 0.5];

Ejemplo: b.FaceColor = 'flat';

Datos de color, especificados como uno de estos valores:

  • Triplete RGB: un único valor de color RGB se aplica a todas las barras.

  • Matriz de tres columnas: un color por barra. Cada fila de la matriz especifica un triplete RGB para una barra determinada.

  • Escalar: un color único se aplica a todas las barras; el color procede del mapa de colores.

  • Vector: un color por barra. Los colores proceden del mapa de colores.

De forma predeterminada, al crear un gráfico de barras, la propiedad CData contiene una matriz de tres columnas de tripletes RGB. Puede cambiar el color de una barra en particular cambiando la fila correspondiente de la matriz.

Esta propiedad solo se aplica cuando la propiedad FaceColor o EdgeColor está establecida como 'flat'.

Ejemplo

Cambie el color de una barra determinada estableciendo la propiedad FaceColor como 'flat'. A continuación, cambie la fila correspondiente de la matriz de CData al nuevo triplete RGB. Por ejemplo, cambie el color de la segunda barra.

b = bar(1:10,'FaceColor','flat');
b.CData(2,:) = [0 0.8 0.8];

Valor de referencia, especificado como valor escalar numérico.

El valor de referencia que especifique se aplica al eje x o al eje y en función de la orientación del gráfico de barras. Si cambia la orientación del gráfico de barras de vertical a horizontal, o viceversa, el valor de referencia podría cambiar. Establezca la propiedad BaseValue después de establecer la propiedad Horizontal.

Estilo de línea de los contornos de barra, especificado como uno de los estilos de línea de esta tabla.

Estilo de líneaEstilo de líneaLínea resultante
'-'Línea continua

'--'Línea de guiones

':'Línea de puntos

'-.'Línea de guiones y puntos

'none'Sin líneaSin línea

Anchura de los contornos de barra, especificada como valor positivo con el punto como unidad. Un punto equivale a 1/72 pulgadas.

Ejemplo: 1.5

Tipos de datos: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Argumentos de salida

contraer todo

Objetos Bar. Utilice los elementos de b para obtener acceso a las propiedades de un objeto Bar específico tras su creación y modificarlas.

Introducido antes de R2006a