Not sure this is helpful or not depending on if I understood your question
The Set Script message for the profiler allows you to assign a callback function which is invoked whenever a variable is changed. Below I set the ref line to be 50 times the value of the "Silica" whenever a variable is changed
dt = Open( "$SAMPLE_DATA/Tiretread.jmp" );
prof = Profiler(
Y(:Pred Formula HARDNESS),
SendToReport(
Dispatch(
{"Prediction Profiler"},
"10000",
ScaleBox,
{Min( 100 ), Max( 20 ), Inc( 5 ), Minor Ticks( 1 )}
)
)
);
prof << Set Script( CallBack() );
CallBack = Function({settings},{Default Local},
silicaValue = Get Silica(settings);
show(silicaValue);
rep = prof << Report;
refLineValue = 50*silicaValue;
Try(
rep[AxisBox(1)] << Remove Ref Line(::lastValue)
);
rep[AxisBox(1)] << Add Ref Line(refLineValue);
::lastValue = refLineValue;
);
Get Silica = Function({settings},{Default Local},
For (i=1,i<=NItems(settings),i++,
item = Char(settings[i]);
varName = Word(1,item," = ");
If (varName == "SILICA",
value = Word(2,item," = ");
)
);
Num(value)
)
-Dave