The input domain (sample values).
List<double> get domain => List.unmodifiable(_domain);
set domain(List<double> value) { _domain = value.where((v) => v.isFinite).toList()..sort(); _rescale(); }