如何迭代圖表上的參考線你好,
我可以知道如何使用 JSL 腳本進行在圖表上添加參考線的迭代嗎?
因為現在我只能在圖表上為第一個選項卡添加參考線,圖表的其他選項卡無法生成出來。
有人可以幫忙嗎?
謝謝。
回复:如何迭代圖表上的參考線您不了解指向每個變異性圖表的指針是如何工作的。 您正在使用以下代碼:
vchart = dt_raw_dataset << Variability Chart(
Y( Eval( IAT[i] ) ),
X( :Name( "Lot" ), :Name( "Fab Lot" ) ),
Analysis Type( "Choose best analysis (EMS REML Bayesian)" ),
);
您多次循環執行此代碼。 您的想法是,您可以通過使用代碼來引用第一次的輸出
vc = vchart[m] << Report;
這不是一個有效的假設。 相反,每次使用內存變量“vchart”時,它不會將新值添加到某些 vchart 值列表中,它實際上將“vchart”的值更改為新值。 因此,您得到的正是您所報告的內容。 只有一張圖表上有參考線。 也就是說,這是因為它僅指向變異圖的最後一個實例。
需要做什麼,它改變你的代碼,而不是對每個變異圖實例使用“vchart”,而是對第一個實例使用“vchart1”,對第二個實例使用“vchart2”,等等。
然後,當您生成參考線時,您可以指向變異性圖表的第一個、第二個……實例。
您需要做的是創建一個列表來存儲每個 vchart 指針,然後您就可以稍後調用它們
dt = Current Data Table();
dd = {};
ow = Oneway( Y( :height ), X( :sex ) );
dd[1] = ow;
ow = Oneway( Y( :weight ), X( :sex ) );
dd[2] = ow;
rpt = Report( dd[1] );
rpt[AxisBox( 1 )] << Add Ref Line( 65 );
rpt = Report( dd[2] );
rpt[AxisBox( 1 )] << Add Ref Line( 120 );
您可以擴展相同類型的方法來生成參考線等。
回复:如何迭代圖表上的參考線你好,
實際上每個選項卡都有 5 個圖表。
嗯,在每個圖表中,我需要有 5 條參考線。
對於紅色部分,我只能在圖表上的一個選項卡上生成參考線,而在圖表的其他 4 個選項卡上,我無法生成參考線。
但是當我運行整個腳本時,它沒有顯示任何錯誤,所以我不知道如何修復它。
謝謝。
variabilityWindow = New Window( "Variability Chart", tb = Tab Box() );
For( i = 1, i <= N Items(distinctFamilyDevice), i++,
// Create a new tab and append the variability charts
tb << Insert(
distinctFamilyDevice[i],
VListBox(
vchart = dt_raw_dataset << Variability Chart(
Y( Eval(IAT[i]) ),
X( :Name( "Lot" ), :Name( "Fab Lot" ) ),
Analysis Type( "Choose best analysis (EMS REML Bayesian)" ),
);
)
);
);
For(m = 1, m <= N Items(IAT), m++,
vc = vchart[m] << Report;
axisbox = vc [axisbox(1)];
axisbox << Add Ref Line(-1.5,"Dashed",red,"-1.5 Sigma",2);
axisbox << Add Ref Line(1.5, "Dashed", red, "1.5 Sigma", 2);
axisbox << Add Ref Line(0, "Solid", red, "Target", 2);
axisbox << Add Ref Line(-3, "Dotted", red, "-3 Sigma", 2);
axisbox << Add Ref Line(3, "Dotted", red, "3 Sigma", 2);
);
回复:如何迭代圖表上的參考線恐怕您仍然沒有發布有關您遇到的問題的足夠詳細信息,以便我們有效地為您提供解決方案。
您可以使用任何示例數據構建一個簡單的示例來演示您正在嘗試的技術嗎?
我們需要確切地知道您在完整的、可運行的示例中嘗試過哪些代碼,以及您到底遇到了什麼問題。 也就是說,您收到錯誤消息了嗎? 代碼的行為是否出乎意料? 您是否在任何圖表上找到了參考線? 同一張圖上的所有線? 簡而言之,請提供更多詳細信息。
以下是使用示例數據的示例,展示了完成任務的基本方法。 也許您可以擴展此示例來演示您遇到的困難。
dt = Open( "$SAMPLE_DATA\Semiconductor Capability.jmp" );
collist = {:NPN1, :NPN2, :NPN3, :NPN4};
varcharts = {};
tb = Tab Box();
For( i = 1, i <= N Items( collist ), i++,
tb << Insert(
collist[i] << get name,
V List Box(
varcharts[i] = dt << Variability Chart(
Y( collist[i] ),
X( :wafer ),
Analysis Type( "Choose best analysis (EMS REML Bayesian)" )
)
)
);
);
for(i=1, i<=nitems(varcharts),i++,
vc = varcharts[i] << Report;
axisbox = vc [axisbox(1)];
axisbox << Add Ref Line(110,"Dashed",blue,"-1.5 Sigma",2);
);
new window("My Window", tb);

回复:如何迭代圖表上的參考線謝謝@傑夫·珀金森和@tx尼爾森用於回复。
但我仍然無法解決我的問題。
我仍然無法使其圖表的每個選項卡都有參考線。
我確實自己嘗試過,所以請問是否有任何替代方法仍然可以使圖表的每個選項卡都可以生成參考線?
謝謝。
回复:如何迭代圖表上的參考線我鼓勵你看看軸列屬性。 如果您將此屬性添加到列中,則使用該列的每個圖形都將具有相同的軸設置,包括參考線。
dt = Open( "$SAMPLE_DATA\Big Class.jmp" );
Column( dt, "weight" ) <<
Add Column Properties(
Set Property(
"Axis",
{Add Ref Line( 100, "Solid", "Black", "", 1 )}
)
);
dt << Bivariate( Y( :weight ), X( :height ), Fit Line );回复:如何迭代圖表上的參考線這是一個非常簡單的例子。
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA\big class.jmp" );
nw = New Window( "Tab Test",
mytab = Tab Box(
t1 = Tab Page Box( "One", onebiv = dt << Bivariate( Y( :weight ), X( :height ) ) ),
t2 = Tab Page Box( "Two", twobiv = dt << Bivariate( Y( :weight ), X( :age ) ) )
)
);
report(onebiv)[AxisBox(1)]<<ADD ref="" line=""></ADD>
回复:如何迭代圖表上的參考線你好,
為了創建選項卡,
tb << Insert(
distinctFamilyDevice[i],
VListBox(
dt_raw_dataset << Variability Chart(
Y( Eval(IAT[i]) ),
X( :Name( "Lot" ), :Name( "Fab Lot " ) ),
Analysis Type( "Choose best analysis (EMS REML Bayesian)" ),
);
在創建參考線時,我嘗試使用 expr 函數,但是所有使用 expr 函數的腳本都不起作用。所以,我不使用它。
我現在使用下面的代碼,它可以生成參考線,但僅適用於圖表的第一個選項卡。
vc = Variability Chart[i] << Report;
axisbox = vc [axisbox(1)];
axisbox << Add Ref Line(-1.5,"Dashed",blue,"-1.5 Sigma",2);
axisbox << Add Ref Line(1.5, "Dashed", blue, "1.5 Sigma", 2);
axisbox << Add Ref Line(0, "Solid", blue, "Target", 2);
axisbox << Add Ref Line(-3, "Dashed", red, "-3 Sigma", 2);
axisbox << Add Ref Line(3, "Dashed", red, "3 Sigma", 2); 創建圖表的平台是變異性圖表。
謝謝。
回复:如何迭代圖表上的參考線我們需要更多信息才能為您指明正確的方向。
您如何創建選項卡? 您嘗試過使用什麼 JSL 將參考線放在其他選項卡的圖表上?
您使用什麼平台來創建圖表?