全部,
我想詢問有關使用多個參數編寫 GB 圖的最佳方法的輸入。
假設我有一張這樣的桌子:
New Table( "Untitled 140",
Add Rows( 12 ),
New Column( "Category",
Character,
"Nominal",
Set Values( {"A", "A", "A", "B", "B", "B", "C", "C", "C", "D", "D", "D"} )
),
New Column( "Value1",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [1, 4, 2, 3, 6, 2, 3, 5, 4, 1, 3, 6] )
),
New Column( "Value2",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [6, 3, 5, 2, 8, 6, 5, 2, 6, 3, 5, 4] )
)
)我想編寫一個這樣的情節:

自動生成的腳本如下所示:
;Graph Builder(
Size( 522, 450 ),
Show Control Panel( 0 ),
Variables( X( :Category ), Y( :Value1 ), Y( :Value2, Position( 1 ) ) ),
Elements( Bar( X, Y( 1 ), Y( 2 ), Legend( 4 ), Summary Statistic( "Range" ) ) )
)
需要注意的是,有任意數量的 Y 列,並且名稱也是任意的。
對於像變異圖這樣的圖,我會這樣:
parameters = {:"Value1"n, :"Value2"n};
yExpr = Expr( Y() );
For Each( {value, index}, parameters, Insert Into( yExpr, Name Expr( value ), 1 ) );
Eval(
Substitute(
Expr(
Variability Chart( placeholder, X( :Category ), Std Dev Chart( 0 ) )
),
Expr( placeholder ), Name Expr( yExpr )
)
);我將列的名稱作為列表接收,然後構造一個 Y 表達式,然後將其放入圖表的腳本中。 它會給我一個可變圖列表,但這對我來說沒關係。
如果我想在 GB 的情況下採用相同的路線,看起來我將不得不構造兩個表達式:
Y( :Value1 ), Y( :Value2, Position( 1 ) )
和
Elements( Bar( X, Y( 1 ), Y( 2 ), Legend( 4 ), Summary Statistic( "Range" ) ) )
這基本上是整個腳本。
我的問題:有沒有更好的方法,而不是用表達式進行一堆替換來組裝這兩行?
謝謝!