從報告窗口獲取圖表生成器大家好,
我有許多已經創建的圖表 - 所有一個圖表都在一個窗口中。
現在我正在創建一個腳本,它遍歷所有打開的圖形窗口並更改圖形中的一些文本。
我做到了這一點:
wList = Get Window List(Type("Reports"));
For(w = 1, w <= nitems(wList), w++,
Print(wList[w] << Get Window Title());
wList[w] << SendToReport( [...]基本上,一旦有了窗口,我就想訪問 Graph Builder 和 SendToReport 功能。
不用說,Window 與 Graph Builder 不同,所以這是行不通的。 如何從擁有窗口到擁有 Graph Builder?
我在想像 wList[w] << Get Graph Builder << SendToReport()
我也意識到,在實際創建這些圖表的腳本中這樣做會容易得多,但由於各種原因,該解決方案只會在未來實施,而現在我無法這樣做,將不得不使用完成的圖表。
先感謝您。
回复:從報告窗口獲取 Graph Builder謝謝! 正是我需要的。
作為參考,如果有人想做同樣的事情:
wList[w][ScaleBox(n)] << Label Row() 允許您操作軸標籤。
wList[w][TextEditBox(n)] << Set Text() 允許您更改頭部標題以及軸標題。
wList[w][FrameBox(n)] << DispatchSeg(TextSeg( m ), {Set Text()} 允許您更改圖形內的文本框,例如中位數或 N。
奇怪的是,對於實際顯示的某些更改(由 Label Row 和 DispatchSeg 設置的更改),您需要在之後發出 Get Text 請求,例如: Print(wList[w][ScaleBox(1)] << Get Text );
可能是因為這不是進行這些文本更改的最佳方式,但這樣您就可以像在 Graph Builder 中一樣使用代碼。 
回复:從報告窗口獲取 Graph Builder你很接近......這是一個如何做你想做的事的例子。您只需將各種消息用於輸出窗口中的不同對象。
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/blood pressure.jmp" );
Graph Builder(
Size( 534, 450 ),
Show Control Panel( 0 ),
Variables( X( :Dose ), Y( :BP 8M ) ),
Elements( Points( X, Y, Legend( 3 ) ) )
);
Graph Builder(
Size( 534, 450 ),
Show Control Panel( 0 ),
Variables( X( :Dose ), Y( :BP 12M ) ),
Elements( Points( X, Y, Legend( 3 ) ) )
);
wList = Get Window List( Type( "Reports" ) );
wList[1][axisbox( 2 )] << Max( 250 );