我有一个图函数,在这个函数中,除了Where()子句,其他所有内容都相同。我的.jsl本质上很长,我想节省滚动时间和大小,但只使用其中一个即可。我曾尝试放置一个If()语句,但这没有用。任何帮助总是很感激。
d
S_323K694_SAVE_PART = Function(
{dt, Yaxis, colsOverlay },
Eval(
Substitute(
Expr(
gb = dt << Graph Builder(
Invisible,
Where( dt:tstFunc == plot & dt:part_number == h0 & dt:attenstate == attn & dt:phasestate == phas ),
Size( 817, 635 ),
Show Legend( 1 ),
Show Control Panel( 0 ),
Automatic Recalc( 1 ),
Variables( X( :FREQ_GHz ), Y( Eval( Yaxis ) ), Overlay( Eval( colsOverlay ) ) ),
Elements( Line( X, Y, Legend( 11 ) ) ),
)
),
Expr( plot ), plot,
Expr( attn ), attn,
Expr( phas ), phas,
Expr( mode ), mode,
Expr( tfun ), tstFunc,
Expr( over ), colsOverlay,
)
);
(gb << Top Report)[Text Box( 1 )] << Delete;
Report( gb )[Text Edit Box( 2 )] << Set Font Size( 8 ) << Set Font Style( "Bold" );
Report( gb )[Text Edit Box( 1 )] << Set Font Size( 25 ) << Set Font Style( "Bold" );
Report( gb )[Outline Box( 1 )] << Set Title( "" );
Report( gb )[Axisbox( 1 )] << Inc( 1 ) << Minor Ticks( 1 );
Report( gb )[Axisbox( 1 )] << Label Row(
{Label Orientation( "Angled" ), Show Major Grid( 1 ), Show Minor Grid( 1 ), Set Font Size( 12 )}
);
Report( gb )[Axisbox( 2 )] << Label Row( {Show Major Grid( 1 ), Show Minor Grid( 1 ), Set Font Size( 10 )} );
Report( gb )[Axisbox( 2 )] << Inc( 1 );
Try(
Text = Report( gb )[Text Box( 5 )] << Get Text;
If( Contains( Text, "Where" ),
Report( gb )[Text Box( 5 )] << Delete
);
);
);
// GB #1 uses Where( dt:tstFunc == plot & dt:part_number == h0 & dt:attenstate == attn & dt:phasestate == phas ),
// GB #2 uses Where( dt:tstFunc == plot & dt:attenstate == attn & dt:phasestate == phas ),
我想要一些其他信息。
plot,attn,phas,mode,tstFunc和colsOverlay的典型值是多少?
为什么在“替代功能”中未指定变量h0和Yaxis?