如何建立與平均值相差 3 個標準差而不是 1 個標準差的折線圖?
我很榮幸你說@txnelson - 只花了 4 年;)
我幾乎每天都會學到有關 JMP 的新知識。謝謝@Florian_Vogt
嗨@PowerPlatypus37 ,
您應該能夠透過手動計算您想要的誤差線範圍值來獲得此值。
為此,請使用列公式和「分組依據」函數來計算對應的範圍。
然後在Graph Builder中,您可以先建立圖表。然後選擇誤差條並將包含範圍值的欄位拖曳到右側的「間隔」放置區域中。 (請參閱此處:https: //www.jmp.com/support/help/en/17.2/index.shtml#page/jmp/graph-zones.shtml# )

(注意,在本例中,我沒有計算誤差線的不同值=它們在這裡的寬度相同)。
希望這可以幫助!
最好的
佛洛里安
我知道如何執行此操作的唯一方法是使用 JSL 中可用的圖形基元添加錯誤欄。
@Florian_Vogt在他的回覆中提供如何設定自訂誤差線的指標。他的回答是處理問題的正確方法。
下面是一個非常簡單的範例,使用非常基本的結構化程式碼來說明如何將圖形元素新增到現有圖形中。這是一項值得了解的好技術,但不是此討論問題的正確答案,除非您使用的是 JMP 13 或更早版本。

</CODE></PRE>
<PRE><CODE class=" language-jsl">Names Default To Here( 1 );
dt =
// Open Data Table: Big Class.jmp
// → Data Table( "Big Class" )
Open( "$SAMPLE_DATA/Big Class.jmp" );
dt:age << modeling type( continuous );
gb = Graph Builder(
Size( 528, 450 ),
Show Control Panel( 0 ),
Variables( X( :age ), Y( :height ), Overlay( :sex ) ),
Elements( Line( X, Y, Legend( 4 ), Error Interval( "None" ) ) )
);
dtSum = dt << Summary(
invisible,
Group( :sex, :age ),
Mean( :height ),
Std Dev( :height ),
Freq( "None" ),
Weight( "None" ),
statistics column name format( "stat" ),
Link to original data table( 0 )
);
sexList = dtSum:sex << get values;
ageMat = dtSum:age << get values;
meanMat = dtSum:Mean << get values;
stdMat = dtSum:Std Dev << get values;
close( dtSum, nosave );
gbf = Report( gb )[FrameBox( 1 )];
gbf << add graphics script(
ymin=999999999999;
ymax=-999999999999;
ls = {0, 0};
le = {0, 0};
For Each( {row, i }, ageMat,
If( sexList[i] == "F",
Pen Color( "Blue" ),
Pen Color( "red" )
);
Pen Size( 1 );
ls[1] = ageMat[i];
ls[2] = meanMat[i] - 3 * stdMat[i];
if(ls[2]<YMIN>ymax, ymax=le[2]);行(ls,le); // 底線 ls[1] =ageMat[i] - .1; le[1] = 年齡Mat[i] + .1; ls[2] = MeanMat[i] - 3 * stdMat[i]; le[2] = MeanMat[i] - 3 * StdMat[i];行(ls,le); // 底線 ls[2] =meanMat[i] + 3 * StdMat[i]; le[2] = MeanMat[i] + 3 * StdMat[i];行(ls,le); ); ); // 設定Y軸最大和最小範圍report(gb)[AxisBox(2)] << Max( ymax ) << Min(ymin);</YMIN>