Bug 480067

Summary: Add icicle or treemap visualization
Product: [Applications] filelight Reporter: nilskemail+kde
Component: generalAssignee: Unassigned bugs mailing-list <unassigned-bugs>
Status: CONFIRMED ---    
Severity: wishlist CC: martin.sandsmark, nate
Priority: NOR Keywords: usability
Version: unspecified   
Target Milestone: ---   
Platform: Other   
OS: All   
Latest Commit: Version Fixed In:

Description nilskemail+kde 2024-01-19 22:15:03 UTC
SUMMARY
Filelight currently only provides a sunburst view of the used space. However, this visualization is susceptible to misrepresent the used space as the area increases for files/directories further on the outside.
Icicle or treemap charts on the other hand correctly preserve area.

STEPS TO REPRODUCE
1. Create a directory with the following files (of equal size)
[   80]  .
├── [   80]  a
│   ├── [   80]  b
│   │   ├── [   60]  c
│   │   │   └── [ 1.0M]  test
│   │   └── [ 1.0M]  test
│   └── [ 1.0M]  test
└── [ 1.0M]  test
2. Start a filelight scan in this directory

OBSERVED RESULT
The further out instances of the test file have a larger area. When one looks for large files/dirs to delete they intuitively go by area.

EXPECTED RESULT
The displayed area should be directly proportional to the file/dir size.

SOFTWARE/OS VERSIONS
Operating System: Fedora Linux 39
KDE Plasma Version: 5.27.10
KDE Frameworks Version: 5.113.0
Qt Version: 5.15.11

ADDITIONAL INFORMATION
- Blog post from the creator of flamegraph.pl (https://github.com/brendangregg/FlameGraph), a popular tool for plotting profiling data, about the pros/cons of different chart types: https://www.brendangregg.com/blog/2017-02-06/flamegraphs-vs-treemaps-vs-sunburst.html
- Similar tools like WinDirStat already use TreeMaps as those properly display the area
- A disadvantage of TreeMaps is that clicking down would either directly jump to the file, or would have to be limited to only go down one directory, there is now "jump down to this directory" as there is currently. Icicle graphs would not have this problem.
- For profiling, icicle graphs (or their upside-down equivalent, flame graphs) are already the prime chart type due to proper area representation which is similarly important when profiling as it is for file system cleanup/analysis.
Comment 1 Nate Graham 2024-02-15 20:02:48 UTC
I would tend to agree, and my favorite visualization for this is the tree map. That article even points out its use in the GrandPerspective macOS app, which I install on every Mac I help to support as it's hands-down the easiest to understand, even for normal people.