Advanced ROOT Plotting GUI

Hi,

Please check the project here,

Features Overview

Data Input

  • CSV/Text Import: Interactive preview, configurable delimiters, header detection, row skipping, live table view

  • ROOT File Support: Load histograms (TH1/2/3), graphs (TGraph variants), TTrees

  • Drag-and-drop from TBrowser, integrated ROOT file browser with previews

ROOT Analysis & Filtering (GUI)

  • Entry & Bin Selection: Choose entry ranges for TTrees, bin ranges for histograms

  • Cut Formulas: ROOT TCut syntax, boolean logic, math functions, Entry support

  • Selection Chains: Sequential cuts with visual pipeline, live entry counts

  • Persistence: Save/load/share chains as plain-text .selchain files

Plotting

  • Plot Scope: Single-step or cumulative-chain plotting

  • Plot Types: Scatter, line, histograms (1D/2D/3D), error bars, color maps, surfaces

  • Customization: Axes, colors, markers, lines, legends, grids

  • Automatic histogram creation from filtered TTree data

Advanced Tools

  • Multi-canvas management

  • Column selector with live preview

  • Export plots (PDF, PNG, EPS, SVG)

  • Drag & drop ROOT objects

  • Integrated Scripting: ROOT/C++ and Python, syntax highlighting, CLI, file I/O

  • Advanced Fitting: Gaussian, polynomial, exponential, sine/damped sine, RooFit, custom functions with uncertainties

Requirements

  • OS: Linux (Ubuntu 20.04+)

  • ROOT: ≥ 6.26 (6.28+ recommended)

  • Compiler: GCC ≥ 9.0 (C++17)

  • CMake: ≥ 3.12

  • Python: Optional (for scripting)

Suggestions are welcome!

Thanks for the link to your application. I just tried on Windows and I’ll open a pull request to fix a couple of issues.

Thanks, @bellenot Compatibility with Windows would be great. :slight_smile: