在 GraphBuilder 中,如果按下,用戶可以“同時與多個 FrameBoxes 同步對話” CTRL觸發動作時:
https://community.jmp.com/t5/Discussions/Remove-non-labels-from-hovering-information/mp/561258/highlight/true#M77431
https://community.jmp.com/t5/JMP-Wish-List/Use-CTRL-to-talk-to-multiple-boxes-in-Graph-Builder/idc-p/561263#M2946
很方便 :)
現在,我問自己,如果出現額外的 Framebox 會發生什麼——要么是因為向數據表中添加了行,要么是因為更改了數據過濾器。
令人驚訝的答案(如果從 2-3 個示例推斷是正確的):
如果全部的設置全部現有的框架盒是確切地同樣,這組通用設置被克隆到新的 FrameBoxes。 (*)
另一方面,如果存在微小差異(此處:不同的填充選擇模式),則不會發生剋隆——即使是相同的設置也不會發生,如下例中的背景設置。
在第二步中,GraphBuilder 再次被限制為 2 個 Framebox,並且兩者都匹配了 Fill Selection Mode。
然後,當釋放數據過濾器限制時,設置被克隆到所有新的 FrameBoxes ( = (*))
這解釋了 Graph Builder 的一些“奇怪”行為,我之前註意到但無法準確描述以得到“為什麼”的提示:
有時,當一個圖被分割成子圖時,設置會自動繼承,有時用戶必須為子圖再次設置設置。
乍一看,我認為對繼承進行更詳細的(是/否)控制可能會有所幫助,例如:
通過圖例右側上下文菜單手動應用的顏色和標記設置可以繼承到新的 FrameBoxes甚至如果現有圖表具有不同的選擇模式。
但可能會有反駁的論點......
查看更多...dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
gb = dt << Graph Builder(
Size( 534, 496 ),
Show Control Panel( 0 ),
Graph Spacing( 4 ),
Variables( X( :height ), Y( :weight ), Wrap( :age ) ),
Elements( Points( X, Y, Legend( 9 ) ), Smoother( X, Y, Legend( 10 ) ) ),
Local Data Filter(Add Filter( columns( :age ), Where( :age == {12, 13} ) ) )
);
frameboxes = Report( gb ) << xpath( "//FrameBox" );
For Each( {fb, idx}, frameboxes, fb << Background Color( 10 ) );
frameboxes[1] << Fill Selection Mode( "Selected Darker" );
Wait( 2 );
gb << Remove Local Data Filter;
wait(2);
gb << Local Data Filter( Add Filter( columns( :age ), Where( :age == {12, 13} ) ) );
frameboxes = Report( gb ) << xpath( "//FrameBox" );
For Each( {fb, idx}, frameboxes, fb << Fill Selection Mode( "Selected Darker" ) );
Wait( 2 );
gb << Remove Local Data Filter;