2121- 📈 ** Agregações flexíveis** - Funções como média, soma, mínimo, máximo e contagem
2222- ⚙️ ** Tratamento de dados** - Remoção eficiente de duplicatas e valores nulos
2323- 💾 ** Múltiplos formatos de exportação** - Salvamento em CSV, Parquet e JSON
24+ - ⏳ ** Barras de progresso visuais** - Feedback em tempo real durante operações longas
2425
2526## 📋 Requisitos
2627
@@ -99,13 +100,31 @@ java-spark-data-analyzer/
99100│ ├── java/
100101│ │ └── com/
101102│ │ └── dataanalyzer/
102- │ │ └── DataAnalyzer.java
103+ │ │ ├── DataAnalyzer.java
104+ │ │ └── ProgressBar.java
103105│ └── resources/
104106│ └── dados_vendas.csv
105107├── pom.xml
106108└── README.md
107109```
108110
111+ ## 🌟 Feedback Visual com Barras de Progresso
112+
113+ O aplicativo implementa barras de progresso visuais no console para melhorar a experiência do usuário durante operações que podem demorar, como:
114+
115+ - Carregamento de arquivos CSV grandes
116+ - Filtragem de dados com condições complexas
117+ - Cálculo de estatísticas descritivas
118+ - Operações de agregação por grupos
119+ - Exportação de resultados em diferentes formatos
120+
121+ Exemplo de barra de progresso durante o carregamento de dados:
122+ ```
123+ Carregando dados...
124+ [██████████████████████████████████████████████████] 100% Finalizando...
125+ Dados carregados com sucesso!
126+ ```
127+
109128## ❓ Solução de Problemas
110129
111130### Windows e Hadoop
@@ -148,18 +167,33 @@ Ao iniciar o aplicativo, você verá um menu interativo:
148167 - Digite o caminho para o CSV ou use "example" para o arquivo de exemplo
149168 - Confirme se o arquivo tem cabeçalho (s/n)
150169 - Especifique o delimitador (geralmente vírgula)
170+ - Uma barra de progresso irá mostrar o status do carregamento
151171
1521722 . ** Explore os dados** :
153173 - Opção 2: Ver a estrutura (schema) dos dados
154174 - Opção 3: Ver uma amostra dos dados
155- - Opção 4: Ver estatísticas descritivas
175+ - Opção 4: Ver estatísticas descritivas com feedback visual do progresso
156176
1571773 . ** Analise e transforme os dados** :
158- - Opção 5: Filtrar registros
159- - Opção 6: Agregar dados (ex: soma de vendas por região)
178+ - Opção 5: Filtrar registros com barra de progresso durante o processamento
179+ - Opção 6: Agregar dados (ex: soma de vendas por região) com feedback visual
160180 - Opção 7: Transformar dados (criar colunas, renomear, etc.)
161181
162- 4 . ** Salve os resultados** usando a opção 8
182+ 4 . ** Salve os resultados** usando a opção 8 com barra de progresso durante a exportação
183+
184+ ## 🧩 Personalizando as Barras de Progresso
185+
186+ As barras de progresso podem ser personalizadas modificando os parâmetros do construtor da classe ` ProgressBar ` :
187+
188+ ``` java
189+ ProgressBar progressBar = new ProgressBar ();
190+
191+ ProgressBar wideBar = new ProgressBar (80 , ' █' , ' ░' , true );
192+
193+ ProgressBar customBar = new ProgressBar (50 , ' #' , ' -' , true );
194+
195+ ProgressBar simpleBar = new ProgressBar (50 , ' █' , ' ░' , false );
196+ ```
163197
164198## 🤝 Contribuições
165199
@@ -174,4 +208,4 @@ Este projeto está licenciado sob a Licença MIT - veja o arquivo LICENSE para d
174208<div align =" center " >
175209 <p ><strong >Por que Java para análise de dados?</strong > Desempenho superior, tipagem estática, multithreading robusto e integração perfeita com sistemas empresariais.</p >
176210 <p ><em >Java Spark Data Analyzer - A resposta Java para a análise de dados em Python.</em ></p >
177- </div >
211+ </div >
0 commit comments