如果該報告未與變量相關聯,我如何識別 jsl 中的報告?在 JSL 中,表可以通過變量名或表的標題來引用。例如:
如果我通過查詢創建了一個表:
dtMap =打開數據庫(DSN, sqlStr, “地圖” );
然後我可以將該表稱為 dtMap 或 DataTable(“Map”)。
如果我創建一個報告:
Biv = 雙變量 (Y(yy), X(xx));
我可以將其稱為 Biv。
但是我可以用標題或名字來稱呼它嗎?(例如報告(“xx 對 yy 的雙變量擬合”))
通常我更喜歡使用變量名,但我有一個應用程序沒有它,需要通過其他方式引用報告。
回复:如果該報告未與變量關聯,我如何識別 jsl 中的報告?沒有必要在這里道歉。 (如果有,那麼一開始就不要發布! J)
感謝您提交文檔中的遺漏。 我們將進一步調查。
該消息確實出現在幫助>腳本索引. 搜索會找到此消息並顯示有關它的信息。 點擊幫助按鈕為您打開文檔。 在這種情況下,唯一的信息是在JSL 語法指南. 裡面明明什麼都沒有JMP 腳本指南正如你所指出的。
這腳本索引和JSL 語法指南它們本身並不是多餘的,而是非常有用的輔助工具。
回复:如果該報告未與變量關聯,我如何識別 jsl 中的報告?Window() 函數用於腳本並由腳本編寫者使用。 結果通常對用戶不可見。 腳本編寫者可以在日誌中看到結果,作為開發和調試的幫助。
該結果很有用,因為它首先確認獲得了對所有打開窗口的引用列表的結果,其次它可用於處理這些窗口,如 Wendy 和 Ian 所說明的那樣。 表單“Window() << Get Window Title”使用函數的結果(列表)並將消息(Get Window Title)分發到列表中的每個項目。 消息的結果是一個新列表,其中每個打開的窗口的標題都是一個字符串。 因此您無需了解 Window() 的結果(“神秘輸出”)即可使用它。
這僅取決於您想做什麼。 如果我得到了窗口引用,我就可以用函數和消息對窗口做任何事情。 如果我得到窗口標題,這對用戶來說可能意味著什麼,那麼該信息在腳本中的用處有限。
回复:如果該報告未與變量關聯,我如何識別 jsl 中的報告?讓我添加一個符合 JMP 的標準。對不起!!
但是為什麼在腳本指南中搜索:
獲取窗口標題
或者
獲取窗口標題
沒有匹配項?
搜索 Window() 僅匹配
Show Window()、Print Window()、New Window() 和 DataTable Window()?
我建議將這些添加到前面幾章的某處,因為它們似乎是 JMP 中管理窗口的基本功能。
你同意?
回复:如果該報告未與變量關聯,我如何識別 jsl 中的報告?感謝大家。
即使變量設置為下行,也會向用戶提供神秘的輸出,即使 JMP 知道它的含義。
xxx =窗戶();
顯示(xxx);
xxx = {DisplayBox[HeadBox], DisplayBox[HeadBox], DisplayBox[HeadBox], DisplayBox[HeadBox], DisplayBox[HeadBox], DisplayBox[HeadBox]};
任何一個:
xxx <<獲取窗口標題;
或者一行:
xxx = 窗口() <<獲取窗口標題;
作品。
回复:如果該報告未與變量關聯,我如何識別 jsl 中的報告?以 Mark 和 Melanie 已經說過的話為基礎:
NamesDefaultToHere(1);
// Make a report, but don't keep any reference to it
dt = Open("$SAMPLE_DATA/Big Class.jmp");
dt << Bivariate(X(:height), Y(:weight));
// See which windows are open in the current session and find the window of interest
openW = Window();
myWin = {};
for(w=1, w<=NItems(openW), w++,
winTitle = openW[w] << getWindowTitle;
Print(winTitle);
if(Contains(winTitle, "Bivariate"), InsertInto(myWin, openW[w]))
);
// Do a linear fit in each Bivariate report that we found
Wait(2);
for(w=1, w<=NItems(myWin), w++,
// Get the scriptable object for the Bivariate 'analysis layer'
thisSO = myWin[w]["Bivariate ?"] << getScriptableObject;
// Fit the line
thisSO << fitLine;
);
回复:如果該報告未與變量關聯,我如何識別 jsl 中的報告?您可以直接獲取窗口標題列表作為字符串:
Window() << Get Window Title
它返回這樣的東西:
{"Script", "Big Class", "Big Class - Distribution"}回复:如果該報告未與變量關聯,我如何識別 jsl 中的報告?您必須查看窗戶()日誌中的函數。 此顯示只是驗證是否有一堆打開的窗口並使用通用名稱標識每個顯示樹的根。
您可以將此列表保存在一個變量中,然後在檢查每個項目時遍歷列表。 例如,您可以獲得窗口的標題並檢查它是否是您想要的。 如果是,那麼您可以保存它並跳出循環。 現在使用以這種方式獲得的引用,就好像您首先保存了它一樣。
回复:如果該報告未與變量關聯,我如何識別 jsl 中的報告?非常感謝您的快速回复。
我從 Windows() 獲得的輸出看起來很普通。我不明白什麼。
{DisplayBox[HeadBox], DisplayBox[HeadBox], DisplayBox[HeadBox], DisplayBox[HeadBox],
DisplayBox[HeadBox], DisplayBox[HeadBox], DisplayBox[HeadBox], DisplayBox[HeadBox],
DisplayBox[HeadBox], DisplayBox[HeadBox], DisplayBox[HeadBox], DisplayBox[HeadBox]}
回复:如果該報告未與變量關聯,我如何識別 jsl 中的報告?您可以使用索引語法按索引引用開放的 Bivariate 平台,例如 Bivariate[1]。 該索引是它們啟動的順序。
您可以使用 Window() 函數獲取打開窗口的列表,然後遍歷其項目以查找和檢查特定類型的所有平台。