2026
Data Visualization System
- Java
- JavaFX
- AtlantaFX
- Gson
- JUnit
- jpackage
- Inno Setup
Overview
A desktop app that detects column types in a CSV file or a pasted table and builds a dashboard of charts with grouping, aggregation and filters. It ships with ready-made dashboards for three real open datasets (Our World in Data, NASA, Istanbul Municipality).
01 · Problem
Real-world CSV files are messy: different encodings and delimiters, Turkish number and date formats, missing headers and broken rows. Turning such data into meaningful charts quickly means either fighting with Excel or moving to a large business intelligence tool.
02 · Solution
I built a desktop app in Java and JavaFX: It detects the file's encoding, delimiter, header row, number format and column types by itself. It offers seven chart types, with date grouping, breakdowns, top N and a colour-blind friendly palette. Filters can apply to the whole dashboard or to a single chart. Charts can be exported as PNG and their data as CSV, with protection against formula injection. Dashboards are saved as validated JSON project files. I wrote a small grouping and aggregation engine that computes everything in a single pass.
03 · Outcome
A Turkish and English app with light and dark themes, distributed as a Windows installer. It opens with ready-made dashboards built on real, properly licensed open data (CO₂ emissions, global temperature, Istanbul dam levels). It has 29 unit tests and passes a sweep of more than 61,000 chart combinations without errors.