eunoia.euler

eunoia.euler(values: Mapping[str, float], *, input: Literal['exclusive', 'inclusive'] = 'exclusive', shape: Literal['circle'] = 'circle', seed: int | None = None) EulerFit[Circle][source]
eunoia.euler(values: Mapping[str, float], *, input: Literal['exclusive', 'inclusive'] = 'exclusive', shape: Literal['ellipse'], seed: int | None = None) EulerFit[Ellipse]

Fit an area-proportional Euler diagram.

Parameters:
  • values – Mapping from set-combination labels (e.g. "A", "A&B") to their areas.

  • input"exclusive" (default): values are per-region areas, with no overlap from other sets included. "inclusive": values are total set sizes that include overlaps; the eunoia core converts internally.

  • shape"circle" (default) or "ellipse".

  • seed – Optional seed for the optimizer’s RNG (for reproducibility).

Returns:

A fit result with shapes, original/fitted values, residuals, region error, diag_error, stress, and loss.

Return type:

EulerFit