Here is a simple example of @Mark_Bailey's suggestion.
Names default to Here(1);
dt = New Table("Example",
Add Rows( 5 ),
New Column( "Time",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [0, 2, 4, 6, 8] )
),
New Column( "I",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values(
[0.303858872597443, 0.22418155030798, 0.202170635461688,
0.181779722721203, 0.148724968294765]
)
)
);
//use bivariate for simplicity
biv = dt << Bivariate(
Y( :I ),
X( :Time ),
Fit Polynomial( 3, {Confid Shaded Indiv( 1 ), Line Color( {212, 73, 88} )} ),
SendToReport(
Dispatch(
{},
"2",
ScaleBox,
{Min( 0 ), Max( 0.45 ), Inc( 0.05 ), Minor Ticks( 1 )}
)
)
);
//get the prediction formula string
fm = report(biv)[OutlineBox("Polynomial ?")][TextEditBox(1)] << get text;
//get the string to the right of the equal sign and convert the string to an expression using Parse()
fm = Parse(Trim(word(2, fm, "=")));
area = Integrate(fm, Time, col minimum(:Time), col maximum(:Time));
Caption("The area under this curve is " || char(area));