Cliente para visualização de correlações corrigidas pelo Método Hindemburg.
Esta aplicação oferece uma interface amigável para o serviço Ajuste de Correlação Hindemburg, que implementa a fórmula proposta por Hindemburg Melão Jr. para corrigir correlações estatísticas com restrição de faixa.
- NextJS (Framework React)
- TypeScript
- Tailwind CSS
- Docker
- ✅ Upload de arquivos CSV (até 5MB)
- ✅ Seleção de colunas X e Y para análise
- ✅ Aplicação opcional de filtros por faixa
- ✅ Personalização de rótulos e dimensões do gráfico
- ✅ Visualização em tempo real dos resultados
O método implementa um ajuste matemático para correlações de Pearson em conjuntos de dados com restrição de faixa, proporcionando uma medida mais precisa da correlação real entre variáveis.
Saiba mais: Para entender a base teórica e acessar a API REST por trás deste projeto, visite o repositório do serviço principal.
Clone o repositório e instale as dependências:
# Clone este repositório
git clone https://github.com/halissontorres/hm-correlation-visualizer.git
cd hm-correlation-visualizer
# Instale as dependências
npm install
# ou
yarn installO projeto inclui configurações Docker para facilitar a implantação em diferentes ambientes:
# Produção
docker-compose up app
# Desenvolvimento com hot-reload
docker-compose up app-dev# Inicie o servidor de desenvolvimento local
npm start
# ou
yarn startA aplicação estará disponível em http://localhost:9002
O projeto possui configurações Docker para ambientes de produção e desenvolvimento:
O projeto utiliza um Dockerfile multi-estágio para otimizar o tamanho da imagem final:
- Base: Imagem Node.js Alpine para ambiente leve
- Dependencies: Instala apenas as dependências necessárias
- Builder: Compila a aplicação Next.js com modo
standalone - Runner: Imagem final, contendo apenas arquivos essenciais para produção
# Resumo do Dockerfile
FROM node:20-alpine AS base
# ... configurações de base
FROM base AS deps
# ... instalação de dependências
FROM base AS builder
# ... build da aplicação Next.js
FROM node:20-alpine AS runner
# ... configuração final para produção com usuário não-rootO arquivo docker-compose.yml define dois serviços:
-
app: Ambiente de produção otimizado
# Produção docker-compose up app
-
app-dev: Ambiente de desenvolvimento com hot-reloading
# Desenvolvimento docker-compose up app-dev
As configurações Docker suportam a seguinte variável de ambiente principal:
| Variável | Descrição | Valor Padrão |
|---|---|---|
NEXT_PUBLIC_API_ENDPOINT |
URL do serviço de API | http://127.0.0.1:5000 |
Você pode sobrescrever esta variável de três maneiras:
- No arquivo
.envlocal - Na linha de comando ao executar
docker-compose - Nas definições de ambiente do seu sistema de orquestração
# Executar com API personalizada
NEXT_PUBLIC_API_ENDPOINT=http://127.0.0.1:5000 docker-compose up app
# Construir imagem com endpoints personalizados
docker-compose build --build-arg NEXT_PUBLIC_API_ENDPOINT=http://127.0.0.1:5000Nota: A aplicação é configurada para executar na porta 9002 por padrão, tanto localmente quanto nos contêineres Docker.
Esta interface consome o serviço REST disponível em:
github.com/halissontorres/ajuste-correlacao-hindemburg
O fluxo de funcionamento é:
- Upload do arquivo CSV pela interface
- Configuração dos parâmetros
- Processamento pelo serviço REST
- Retorno e exibição do gráfico de correlação (formato PNG)
Por padrão, a aplicação está configurada para usar o endpoint:
http://127.0.0.1:5000
Para usar um servidor API diferente, configure a variável de ambiente NEXT_PUBLIC_API_ENDPOINT.
Este projeto está licenciado sob os termos da licença MIT. Veja o arquivo LICENSE para mais detalhes.
Desenvolvido para fins educacionais, científicos e aplicação prática da correção de correlação com restrição de faixa (método HM).
