- 1. Introduction to ROOT ›
- 2. C++ Basics for ROOT ›
- 3. ROOT Macros ›
- 4. ROOT Objects and the ROOT Object Model ›
- 5. Histograms ›
- 6. Two-Dimensional Histograms ›
- 7. Graphs ›
- 8. Canvases and Plotting ›
- 9. Styling ROOT Plots ›
- 10. Mathematical Functions ›
- 11. Curve Fitting ›
- 12. ROOT Files ›
- 13. TTrees ›
- 14. Event-Based Data Analysis ›
- 15. Working with Real Experimental Data ›
- 16. Random Numbers and Simulations ›
- 17. Statistical Analysis with ROOT ›
- 18. Modern ROOT with RDataFrame ›
- 19. ROOT and Python ›
- 20. Advanced TTree Techniques ›
- 21. ROOT for Particle and Nuclear Physics ›
- 22. Debugging and Common ROOT Problems ›
- 23. Writing Better ROOT Analysis Code ›
- 24. Final Project ›
- 25. Appendices ›
18. Modern ROOT with RDataFrame
Views: 19
Where to Move
Move chapter:
- β° 1. Introduction to ROOT
- β° 1.1. What Is ROOT?
- β° 1.2. Installing ROOT
- β° 1.3. Starting ROOT
- β° 1.4. Your First ROOT Session
-
- β° 2. C++ Basics for ROOT
- β° 2.1. Why ROOT Uses C++
- β° 2.2. Variables and Data Types
- β° 2.3. Operators
- β° 2.4. Conditional Statements
- β° 2.5. Loops
- β° 2.6. Functions
- β° 2.7. Arrays and Vectors
-
- β° 3. ROOT Macros
- β° 3.1. What Is a ROOT Macro?
- β° 3.2. Running ROOT Macros
- β° 3.3. Functions Inside ROOT Macros
- β° 3.4. Compiling ROOT Macros
- β° 3.5. Organizing a ROOT Project
-
- β° 4. ROOT Objects and the ROOT Object Model
- β° 4.1. Introduction to ROOT Classes
- β° 4.2. Object Names and Titles
- β° 4.3. ROOT Collections
- β° 4.4. Inspecting ROOT Objects
-
- β° 5. Histograms
- β° 5.1. Introduction to Histograms
- β° 5.2. Creating a 1D Histogram
- β° 5.3. Filling Histograms
- β° 5.4. Drawing Histograms
- β° 5.5. Histogram Properties
- β° 5.6. Accessing Histogram Bins
- β° 5.7. Histogram Errors
- β° 5.8. Normalizing Histograms
- β° 5.9. Combining Histograms
-
- β° 6. Two-Dimensional Histograms
- β° 6.1. Creating 2D Histograms
- β° 6.2. Filling 2D Histograms
- β° 6.3. Drawing 2D Histograms
- β° 6.4. Projections
- β° 6.5. Profiles
-
- β° 7. Graphs
- β° 7.1. Introduction to TGraph
- β° 7.2. Creating a TGraph
- β° 7.3. Graph Styling
- β° 7.4. TGraphErrors
- β° 7.5. TGraphAsymmErrors
- β° 7.6. MultiGraph
-
- β° 8. Canvases and Plotting
- β° 8.1. TCanvas
- β° 8.2. Dividing a Canvas
- β° 8.3. Drawing Multiple Objects
- β° 8.4. Legends
- β° 8.5. Text and Annotations
- β° 8.6. Logarithmic Axes
- β° 8.7. Saving Plots
-
- β° 9. Styling ROOT Plots
- β° 9.1. ROOT Plot Styles
- β° 9.2. Axis Configuration
- β° 9.3. Line Styles
- β° 9.4. Marker Styles
- β° 9.5. Publication-Quality Figures
-
- β° 10. Mathematical Functions
- β° 10.1. Introduction to TF1
- β° 10.2. Built-in Functions
- β° 10.3. Custom Functions
- β° 10.4. Evaluating Functions
- β° 10.5. Function Integrals
-
- β° 11. Curve Fitting
- β° 11.1. Introduction to Fitting
- β° 11.2. Gaussian Fits
- β° 11.3. Polynomial Fits
- β° 11.4. Custom Fit Functions
- β° 11.5. Fit Parameters
- β° 11.6. Goodness of Fit
- β° 11.7. Fit Residuals
- β° 11.8. Fitting Graphs
-
- β° 12. ROOT Files
- β° 12.1. Introduction to ROOT Files
- β° 12.2. Creating ROOT Files
- β° 12.3. Writing Objects
- β° 12.4. Reading ROOT Files
- β° 12.5. Exploring ROOT Files
- β° 12.6. Directories Inside ROOT Files
-
- β° 13. TTrees
- β° 13.1. Introduction to TTrees
- β° 13.2. Creating a TTree
- β° 13.3. Filling a TTree
- β° 13.4. Writing a TTree to a File
- β° 13.5. Reading a TTree
- β° 13.6. Inspecting TTrees
- β° 13.7. Drawing Data from TTrees
- β° 13.8. Applying Selection Cuts
- β° 13.9. Branch Addresses
-
- β° 14. Event-Based Data Analysis
- β° 14.1. Understanding Event Data
- β° 14.2. Event Loops
- β° 14.3. Event Selection
- β° 14.4. Derived Quantities
- β° 14.5. Analysis Workflow
-
- β° 15. Working with Real Experimental Data
- β° 15.1. Importing Text Data
- β° 15.2. Converting Data to ROOT
- β° 15.3. Data Cleaning
- β° 15.4. Data Calibration
- β° 15.5. Signal and Background
-
- β° 16. Random Numbers and Simulations
- β° 16.1. Random Number Generation
- β° 16.2. Common Distributions
- β° 16.3. Simple Monte Carlo Simulation
- β° 16.4. Detector Resolution Simulation
- β° 16.5. Efficiency Simulation
-
- β° 17. Statistical Analysis with ROOT
- β° 17.1. Basic Statistics
- β° 17.2. Probability Distributions
- β° 17.3. Statistical Uncertainties
- β° 17.4. Chi-Square Tests
- β° 17.5. Confidence Intervals
-
- β° 18. Modern ROOT with RDataFrame
- β° 18.1. Introduction to RDataFrame
- β° 18.2. Loading Data
- β° 18.3. Filtering Data
- β° 18.4. Defining New Columns
- β° 18.5. Creating Histograms
- β° 18.6. Statistical Operations
- β° 18.7. Saving Results
- β° 18.8. Multithreading
-
- β° 19. ROOT and Python
- β° 19.1. Introduction to PyROOT
- β° 19.2. ROOT Objects in Python
- β° 19.3. Reading ROOT Files with Python
- β° 19.4. PyROOT and NumPy
- β° 19.5. PyROOT and Matplotlib
- β° 19.6. Choosing Between C++ and Python
-
- β° 20. Advanced TTree Techniques
- β° 20.1. Trees with Multiple Branches
- β° 20.2. Storing std::vector Objects
- β° 20.3. TChain
- β° 20.4. Friends
- β° 20.5. Efficient TTree Analysis
-
- β° 21. ROOT for Particle and Nuclear Physics
- β° 21.1. Four-Vectors
- β° 21.2. Particle Kinematics
- β° 21.3. Invariant Mass
- β° 21.4. Angular Distributions
- β° 21.5. Detector Spectra
-
- β° 22. Debugging and Common ROOT Problems
- β° 22.1. ROOT Object Ownership
- β° 22.2. Null Pointers
- β° 22.3. Segmentation Faults
- β° 22.4. Missing Histograms
- β° 22.5. ROOT File Problems
- β° 22.6. TTree Branch Problems
- β° 22.7. Histogram Range Problems
- β° 22.8. Fit Failures
- β° 22.9. Debugging ROOT Macros
-
- β° 23. Writing Better ROOT Analysis Code
- β° 23.1. Separating Analysis and Plotting
- β° 23.2. Using Functions
- β° 23.3. Using Header Files
- β° 23.4. Naming Conventions
- β° 23.5. Avoiding Hard-Coded Values
- β° 23.6. Configuration Parameters
- β° 23.7. Reproducible Analysis
- β° 23.8. Version Control with Git
-
- β° 24. Final Project
- β° 24.1. Project Overview
- β° 24.2. Analyze a complete scientific dataset using ROOT.
- β° 24.3. Import the Data
- β° 24.4. Explore the Dataset
- β° 24.5. Apply Data Selection
- β° 24.6. Create Histograms
- β° 24.7. Fit the Data
- β° 24.8. Calculate Physical Quantities
- β° 24.9. Estimate Statistical Uncertainties
- β° 24.10. Create Publication-Quality Figures
- β° 24.11. Save the Analysis Results
- β° 24.12. Write a Short Analysis Report
-
- β° 25. Appendices
- β° 25.1. A. ROOT Command Cheat Sheet
- β° 25.2. B. ROOT Histogram Classes
- β° 25.3. C. ROOT Graph Classes
- β° 25.4. D. Common TTree Commands
- β° 25.5. E. Common Drawing Options
- β° 25.6. F. Common Fit Functions
- β° 25.7. G. ROOT C++ Cheat Sheet
- β° 25.8. H. PyROOT Cheat Sheet
- β° 25.9. I. Common ROOT Errors and Solutions
- β° 25.10. J. Recommended ROOT Analysis Workflow
-
KAHIBARO