Como fazer Gráfico de Barras pelo Matlab? - Parte 1

Atualizado: Fev 12

Um gráfico de barras é considerado como o resumo de um conjunto de dados categóricos. Este ilustra os dados utilizando um número de barras de mesma largura, cada uma delas representando uma categoria particular. A altura de cada barra é proporcional a um dado específico, como a média dos valores de uma categoria, por exemplo. 


Para plotarmos nosso gráfico de barras no Matlab vamos criar nosso vetor de dados y. Para isso, digite no Command Window:


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


Para criar o gráfico de barras vamos usar o comando 'bar', como segue:


figure

bar(y)


Agora você tem uma figura igual a Figura 1A.


Figura 1. Exemplo 1 de gráficos em barra.


Mas seria muito legal colocarmos uma legenda para cada barrinha do nosso gráfico, certo? Vamos imaginar que estamos falando de eventos que ocorreram de 1990 a 2000. Dessa forma crie o vetor tempo:


tempo = 1900:10:2000;


Legal, agora é so acrescentá-lo no command bar e você vai ter um gráfico igual ao da Figura 1B:


figure

bar(tempo,y)


Quer controlar o tamanho da sua barra como na Figura 1C? Faça assim:


figure

bar(x, y, 0.4) %lembre-se voce pode mexer no valor de 0.4, isso vai te permitir ter uma barra mais fina ou mais grossa.


Que tal um pouco de cor?

Figura 2. Exemplo 2 de gráficos em barra.


Pra deixar as barras vermelhas (Figura 2A) é so acrescentar um r no comando, como segue:


figure

bar(y,'r')


Dica: voce pode colorir seu grafico como quiser, use os seguintes comandos: 'b' azul; 'r' vermelho; 'g' verde; 'c' ciano; 'm' magenta; 'y' amarelo; 'k' preto; 'w' branco.


Podemos deixar o gráfico ainda mais colorido, como na Figura 2B, é só adicionar mais alguns comandos:


figure

bar(y,'FaceColor',[0 .5 .5],'EdgeColor',[0 .9 .9],'LineWidth',1.5)


% FaceColor é a cor do grafico; EdgeColor é a cor da borda do grafico e LineWidth é a largura da linha (note: alterando o valor de 1.5 voce pode ter bordas mais finas ou mais grossas).


Dica: Quer mais cores? É só alterar os números do 'FaceColor' e 'EdgeColor'. Faça um teste substituindo 'FaceColor',[0 .5 .5],'EdgeColor',[0 .9 .9] por 'FaceColor',[1 .3 .2],'EdgeColor',[0 .4 .5]


Você também pode dar ênfase a uma barra como na Figura 3 utilizando o seguinte comando:

Figura 3. Exemplo 3 de gráficos em barra.


figure

b = bar(y);

b.FaceColor = 'flat';

b.CData(6,:) = [.5 0 .5];


% atençao aqui a barra 6 foi escolhida, para destacar outra barra é so substituir o (6,:) por (11,:) por exemplo.


Você quer nomear as categoria do seu gráfico como na Figura 4?

Figura 4. Exemplo 4 de gráficos em barra.


X = categorical({'GA','GB','GC','GD', 'GE', 'GF','GG', 'GH', 'GI', 'GJ', 'GK'}); % nome categorias

categorias = reordercats(X,{'GA','GB','GC','GD', 'GE', 'GF','GG', 'GH', 'GI', 'GJ','GK'}); % inclusao do nome das categorias no eixo X do grafico

figure

bar(categorias ,y,'FaceColor',[1 .9 .9],'EdgeColor',[1 .5 .5],'LineWidth',1.5)


Referência

https://www.mathworks.com/help/matlab/ref/bar.html


Estatística: O que é, para que serve, como funciona, por Charles Wheelan.


Estatística básica, por Pedro A. Morettin e Wilton de O. Bussab.


Introdução à Estatística, por Mário F. Triola.

Posts recentes

Ver tudo