tobii_pytracker.analyze.EntropyAnalyzer
- class tobii_pytracker.analyze.EntropyAnalyzer(output_folder: Path)
Computes gaze entropy and dispersion measures (Shannon entropy and Convex Hull area).
Parameters
- output_folderPath
Directory where results and plots are saved.
Methods
__init__(output_folder)analyze(background_data[, per, bins, ...])Compute spatial entropy of gaze distributions.
plot_analysis(background_data, screenshot_path)Visualize gaze entropy overlayed on an image (heatmap + convex hull).
- analyze(background_data: DataFrame, per: str = 'slide', bins: int = 100, use_convex_hull: bool = True) DataFrame
Compute spatial entropy of gaze distributions.
Parameters
- background_datapd.DataFrame
Flattened gaze data containing [‘avg_gaze_x’, ‘avg_gaze_y’, ‘set_name’, ‘slide_index’].
- per{‘global’, ‘set’, ‘slide’}, optional
How to group data before computing entropy.
- binsint, optional
Number of bins for 2D histogram.
- use_convex_hullbool, optional
If True, computes convex hull area as an additional dispersion measure.
Returns
- pd.DataFrame
DataFrame with entropy and convex hull metrics per group.
- plot_analysis(background_data: DataFrame, screenshot_path: Path, title: str | None = None, flip_y: bool = True, bins: int = 100, blur_sigma: float = 3.0, cmap: str = 'hot', alpha: float = 0.6, show: bool = True, save_path: Path | None = None)
Visualize gaze entropy overlayed on an image (heatmap + convex hull).
Parameters
- background_datapd.DataFrame
The gaze data used to compute entropy.
- screenshot_pathPath
Path to screenshot image.
- titlestr, optional
Plot title.
- flip_ybool, optional
Whether to flip Y-axis (for screen coordinates).
- binsint, optional
Histogram bins for the spatial heatmap.
- blur_sigmafloat, optional
Gaussian smoothing factor for heatmap.
- cmapstr, optional
Colormap for heatmap.
- alphafloat, optional
Transparency for heatmap overlay.
- showbool, optional
Whether to show the plot.
- save_pathPath, optional
If provided, save the figure to this path.