JMP SCRIPT:根據使用者選擇變數建立圖表大家好,
我想根據用戶過濾器選擇建立一個圖表。
但是,JMP 無法識別使用者選擇的變數“Y”,並且會發生錯誤。
這是我的程式碼:
Y = concat(Y," (ppm)");
graph = RAW_DATA_TABLE <<
Control Chart Builder(
Size( 534, 450 ),
Show Two Shewhart Charts( 0 ),
Show Control Panel( 0 ),
Sort by Row Order( 1 ),
Variables( Y( :"<U><STRONG>Y</STRONG></U>" ),Subgroup( :Numéro de lot ), Phase(:"Period")),
Get Limits(LIMIT_TABLE),
)
有人建議幫我命名 Y 嗎?
多謝,
賽巴斯蒂安
進階統計建模內容組織數據探索和視覺化實驗設計大規模客製化回复:JMP 腳本:基於用戶選擇變量創建圖形我不確定你在第 1 行要做什麼。 試圖基於某些東西構建列名? 用戶如何選擇 Y? “(ppm)”從何而來?
回复:JMP 腳本:基於用戶選擇變量創建圖形Column Dialog() 命令允許用戶在以後的分析中為角色選擇列。 您應該能夠從腳本索引的示例中刪除/修改以獲得您需要的內容,即只保留與“Y”列相關的內容。

回复:JMP 腳本:基於用戶選擇變量創建圖形用戶選擇基於列表。 但是,用戶從列表中所做的選擇與數據表不匹配,我需要與“(ppm)”連接才能具有相同的變量名稱...
然後,我想製作基於“Y”與“ppm”連接的圖表。
但是,圖形構建器無法識別“Y”...
你有什麼建議幫我解決 Y 的命名問題?
非常感謝您的回答
回复:JMP 腳本:基於用戶選擇變量創建圖形如果您確定該列存在,您可以嘗試將 Y 變量(我會在這裡使用更具描述性的變量名稱)包裝到 Eval
y_column = Concat(Y, " (ppm)");
graph = RAW_DATA_TABLE << Control Chart Builder(
Size(534, 450),
Show Two Shewhart Charts(0),
Show Control Panel(0),
Sort by Row Order(1),
Variables(Y(Eval(y_column)), Subgroup(:Numéro de lot), Phase(:"Period")),
Get Limits(LIMIT_TABLE),
);
Names Default To Here(1);
y_col = "Weight";
dt = Open("$SAMPLE_DATA/Quality Control/Coating.jmp");
dt << Control Chart Builder(Variables(Y(Eval(y_col)), Subgroup(:Sample)));
回复:JMP 腳本:基於用戶選擇變量創建圖形
回复:JMP 腳本:基於用戶選擇變量創建圖形您的代碼的第 1 行不是一個好的做法 - 您正在根據自身重新定義 Y。
嘗試這個:
raw_data_table = New Table( "Test",Add Rows( 4 ),
New Column( "Col1 (ppm)", Numeric, "Continuous", Format( "Best", 12 ),
Set Values( [1, 2, 3, 4] ) ),
New Column( "Numéro de lot", Character, "Nominal",
Set Values( {"a", "a", "b", "b"} ) ),
New Column( "Period", Numeric, "Continuous", Format( "Best", 12 ),
Set Values( [1, 2, 3, 4] ) )
);
Y = "Col1"; // Selected from your dialog box
ycol = Y || " (ppm)";
graph = RAW_DATA_TABLE <<
Control Chart Builder(
Size( 534, 450 ),
Show Two Shewhart Charts( 0 ),
Show Control Panel( 0 ),
Sort by Row Order( 1 ),
Variables( Y( column(RAW_DATA_TABLE, ycol) ),Subgroup( :Numéro de lot ), Phase(:"Period")),
// Get Limits(LIMIT_TABLE),
);
我註釋掉了對 limit_table 的引用,因為我沒有該數據。
回复:JMP 腳本:基於用戶選擇變量創建圖形偉大的 !這正是我所需要的。
現在,我想根據 y_column 進行列選擇,以刪除用戶不需要的列:
a = {Eval(y_colums)};
limit_table << Invert Column Selection( a );
limit_table << Delete Columns;但是,它不起作用。
你有什麼想法可以幫助我嗎?
謝謝
塞巴斯蒂安