Como normalizar um histograma no MATLAB

Como Normalizar Um Histograma No Matlab



A normalização de um histograma é um processo crucial na análise e visualização de dados. MATLAB, uma poderosa ferramenta computacional, fornece várias funções para ajudá-lo a normalizar histogramas de forma eficaz. Neste artigo, exploraremos o processo passo a passo de normalização de um histograma no MATLAB, permitindo que você obtenha informações sobre seus dados e faça comparações significativas.

Como normalizar um histograma no MATLAB?

Um histograma normalizado é um gráfico das frequências de valores de dados, onde as frequências foram normalizadas para que somam 1. Isso significa que o histograma normalizado pode ser usado para comparar as distribuições de diferentes conjuntos de dados, mesmo que os conjuntos de dados tenham tamanhos diferentes , aqui estão algumas etapas para plotar um histograma normalizado:







Etapa 1: carregar dados e criar histograma



Para começar, você precisa carregar seus dados no MATLAB e criar um histograma usando a função histogram(). Esta função calcula as contagens e posições no depósito com base em seus dados. Aqui está um código de exemplo:



dados = % Seus dados aqui % ;
histograma ( dados ) ;





Etapa 2: recuperar os dados do histograma

Depois de criar o histograma, você pode obter as contagens de bin e as bordas de bin usando a função histcounts(). Esta função retorna as contagens em cada bin e as arestas correspondentes. Armazene esses valores em variáveis ​​separadas para processamento posterior:



[ contagens, arestas ] = histcounts ( dados ) ;

Etapa 3: calcular os valores normalizados

Para normalizar o histograma, é necessário dividir a contagem de cada bin pelo número total de pontos de dados. Isso garante que o histograma represente a distribuição de frequência relativa em vez da contagem absoluta. Veja como você pode calcular os valores normalizados:

totalDataPoints = soma ( conta ) ;
valores normalizados = contagens / totalDataPoints;

Passo 4: Ajuste as Bordas do Escaninho

Em alguns casos, pode ser necessário ajustar as bordas do bin para alinhar o histograma normalizado corretamente. Para fazer isso, você pode calcular os pontos médios entre as arestas de compartimentos adjacentes e usá-los como os novos centros de compartimentos. Aqui está um código de exemplo:

binCenters = ( arestas ( 1 :fim- 1 ) + arestas ( 2 :fim ) ) / 2 ;

Etapa 5: plotar o histograma normalizado

Agora que você tem os valores normalizados e os centros de compartimentos ajustados, pode plotar o histograma normalizado usando a função bar(). Defina os centros de bin como os valores do eixo x e os valores normalizados como os valores correspondentes do eixo y:

bar ( binCenters, valores normalizados ) ;

Aqui está o código MATLAB completo que normaliza um histograma:

% Etapa 1 : Criar o Histograma
dados = [ 10 , vinte , 30 , 40 , cinquenta , 10 , vinte , 30 , 10 , vinte ] ;
histograma ( dados ) ;

% Etapa 2 : Obtenha os dados do histograma
[ contagens, arestas ] = histcounts ( dados ) ;

% Etapa 3 : obtenha os valores normalizados
totalDataPoints = soma ( conta ) ;
valores normalizados = contagens / totalDataPoints;

% Etapa 4 : Modifique os compartimentos
binCenters = ( arestas ( 1 :fim- 1 ) + arestas ( 2 :fim ) ) / 2 ;

% Etapa 5 : Plote o Histograma Normalizado
bar ( binCenters, valores normalizados ) ;

% Etapa 6 : Personalizar o gráfico
xlabel ( 'Caixas' ) ;
ylabel ( 'Frequência normalizada' ) ;
título ( 'Histograma normalizado' ) ;
grade ligada;

Adicionei um exemplo de dados de conjunto de dados e usei-o para criar um histograma. Esse código criará um histograma, calculará os valores normalizados, ajustará as bordas do compartimento e plotará o histograma normalizado.

Observação: O código pressupõe que você tenha o MATLAB Image Processing Toolbox instalado, que inclui as funções histograma e histcounts.

Conclusão

A normalização de um histograma no MATLAB é um processo direto que permite obter informações sobre a distribuição de frequência relativa de seus dados. Divida a contagem de cada compartimento pelo número total de pontos de dados para normalizar o histograma.