下限/上限と平均を管理図にプロットするこんにちは、みんな、
Show Limit Summaries テーブルの代わりに、下限値、上限値、および平均値を管理図 (管理図ビルダーで作成) に直接プロットできるかどうかを知りたいです。
ありがとう。
Re: 管理図に下限/上限と平均をプロットするありがとう、ジム。 それは今動作します!Re: 管理図に下限/上限と平均をプロットする最近のバージョンの JMP では、「Summarize()」関数の構文が変更されています。 それが問題かもしれません。 ステートメントを変更する
Summarize( dt, byPhase = by( :MyPhase ) );
に
Summarize( byPhase = by( :MyPhase ) );
Re: 管理図に下限/上限と平均をプロットするありがとう。 英語のピクルスのサンプルデータをチェックインしてもまだ成功しません。 スクリプトを実行して、Summarize( dt/*####*/, byPhase = by( :MyPhase ) ) を実行した後、次のレポートを取得します。 ログを英語に翻訳します。 そこに何か問題があると思いますか?
必须是赋值运算符 正在访问または计算“dt”, dt/*###*/
「dt」にアクセスするには代入演算子を使用する必要があります
以下のスクリプトでは、/*###*/ 标记错误を使用します。
次のスクリプトでは、 /*####*/ を使用してエラーをマークします
Re: 管理図に下限/上限と平均をプロットするスクリプトは、英語で「Individual Measurement of Acid」というタイトルの特定の Outline Box を探しています。あなたの出力は明らかに英語ではありません。以下のスクリプトは、Outline Box(2) への参照を変更します。これはアウトライン ボックスへの絶対参照ですが、「酸の個別測定」は相対参照です。「酸の個別測定」を次のように置き換えてみることもできます。

Names Default To Here( 1 );
// Open the sample data table
dt = Open( "$SAMPLE_DATA\Quality Control\Pickles.jmp" );
// There isn't an adequate column to be used as a Phase column in the sample
// data table, so create one
dt << New Column( "MyPhase", character, formula( Char( Floor( Row() / 13 + 1 ) ) ) );
// Run the control Chart
ct = dt << Control Chart(
Phase( :MyPhase ),
Group Size( 1 ),
KSigma( 3 ),
Chart Col( :Acid, Individual Measurement( Phase Level( "1" ), Phase Level( "2" ) ), Moving Range( Phase Level( "1" ), Phase Level( "2" ) ) )
);
// Create a list called byPhase of the each of the Phase values
Summarize( dt, byPhase = by( :MyPhase ) );
// Find the max row for each phase to determine the X position on the chart
// for the placement of the text values
PhaseMaxRowList = {};
For( i = 1, i <= N Items( byPhase ), i++,
Insert Into( PhaseMaxRowList, Max( dt << get rows where( :MyPhase == byPhase[i] ) ) )
);
// Add the text to the chart
framebox = Report( ct )[frame box( 1 )];
addTxt = Expr(
framebox << Add Graphics Script(
Description( scriptNameTBD ),
Text Color( "Black" );
Text( Center Justified, {xTBD - 2, yTBD + .1}, txtTBD );
);
);
// Loop across the phases and add the 3 text values by pulling their values from the table
// and reformating the values
For( i = 1, i <= N Items( byPhase ), i++,
LCL = (Report( ct )[Outline Box(2)][Number Col Box( i )] << get)[1];
LCLtxt = "LCL=" || Format( LCL, "Fixed Dec", 5, 2 );
Avg = (Report( ct )[Outline Box(2)][Number Col Box( i + N Items( byPhase ) )] << get)[1];
Avgtxt = "Avg=" || Format( Avg, "Fixed Dec", 5, 2 );
UCL = (Report( ct )[Outline Box(2)][Number Col Box( i + (N Items( byPhase ) * 2) )] << get)[1];
UCLtxt = "UCL=" || Format( UCL, "Fixed Dec", 5, 2 );
// Use a separate graphics script for each annotation so that they are more easily moved 'by hand'
Eval(Substitute(NameExpr(addTxt), Expr(scriptNameTBD), "LCL Text "||Char(i), Expr(xTBD), PhaseMaxRowList[i], Expr(yTBD), LCL, Expr(txtTBD), LCLtxt));
Eval(Substitute(NameExpr(addTxt), Expr(scriptNameTBD), "Avg Text "||Char(i), Expr(xTBD), PhaseMaxRowList[i], Expr(yTBD), Avg, Expr(txtTBD), Avgtxt));
Eval(Substitute(NameExpr(addTxt), Expr(scriptNameTBD), "UCL Text "||Char(i), Expr(xTBD), PhaseMaxRowList[i], Expr(yTBD), UCL, Expr(txtTBD), UCLtxt));
);Re: 管理図に下限/上限と平均をプロットするJSLは以前投稿したものと同じです。 テーブル画像はこちらからご覧いただけます。 ご覧のとおり、LCL、UCL、Average のテキストは追加されていません。
ありがとう。
Re: 管理図に下限/上限と平均をプロットするJMP 11 にも Mac にもアクセスできないので、あなたの助けが必要です。 このメッセージは、表示された出力テーブルから LCL を読み取ろうとしているコードを指しています。 制限を含む管理図によって生成された表の画像を提供していただけますか?
Re: 管理図に下限/上限と平均をプロットするMac JMP 11でJSLを試しました。 ただし、テキストはまだチャートに正常に追加されているようです。 ログウィンドウで、次のエラー情報を取得し、添え字を計算できないと言いました。 説明してもらえますか?
For( i = 1, i <= N Items( byPhase ), i++,
LCL = (Report( ct )[/*####*/"酸の個別測定"][Number Col Box( i )
] << get)[1];
Re: 管理図に下限/上限と平均をプロットする@ian_jmp
とても素敵な追加です!
Re: 管理図に下限/上限と平均をプロットするとても素敵なジム!
注釈ごとに個別のグラフィックススクリプトが存在するように、コードに自由に追加しました。

これにより、衝突を避けるために注釈を「手動」で移動できます (グラフィック ボックスを右クリックし、[カスタマイズ] を選択し、スクリプトの x 値と y 値を好みに応じて編集します)。
Names Default To Here( 1 );
// Open the sample data table
dt = Open( "$SAMPLE_DATA\Quality Control\Pickles.jmp" );
// There isn't an adequate column to be used as a Phase column in the sample
// data table, so create one
dt << New Column( "MyPhase", character, formula( Char( Floor( Row() / 13 + 1 ) ) ) );
// Run the control Chart
ct = dt << Control Chart(
Phase( :MyPhase ),
Group Size( 1 ),
KSigma( 3 ),
Chart Col( :Acid, Individual Measurement( Phase Level( "1" ), Phase Level( "2" ) ), Moving Range( Phase Level( "1" ), Phase Level( "2" ) ) )
);
// Create a list called byPhase of the each of the Phase values
Summarize( dt, byPhase = by( :MyPhase ) );
// Find the max row for each phase to determine the X position on the chart
// for the placement of the text values
PhaseMaxRowList = {};
For( i = 1, i <= N Items( byPhase ), i++,
Insert Into( PhaseMaxRowList, Max( dt << get rows where( :MyPhase == byPhase[i] ) ) )
);
// Add the text to the chart
framebox = Report( ct )[frame box( 1 )];
addTxt = Expr(
framebox << Add Graphics Script(
Description( scriptNameTBD ),
Text Color( "Black" );
Text( Center Justified, {xTBD - 2, yTBD + .1}, txtTBD );
);
);
// Loop across the phases and add the 3 text values by pulling their values from the table
// and reformating the values
For( i = 1, i <= N Items( byPhase ), i++,
LCL = (Report( ct )["Individual Measurement of Acid"][Number Col Box( i )] << get)[1];
LCLtxt = "LCL=" || Format( LCL, "Fixed Dec", 5, 2 );
Avg = (Report( ct )["Individual Measurement of Acid"][Number Col Box( i + N Items( byPhase ) )] << get)[1];
Avgtxt = "Avg=" || Format( Avg, "Fixed Dec", 5, 2 );
UCL = (Report( ct )["Individual Measurement of Acid"][Number Col Box( i + (N Items( byPhase ) * 2) )] << get)[1];
UCLtxt = "UCL=" || Format( UCL, "Fixed Dec", 5, 2 );
// Use a separate graphics script for each annotation so that they are more easily moved 'by hand'
Eval(Substitute(NameExpr(addTxt), Expr(scriptNameTBD), "LCL Text "||Char(i), Expr(xTBD), PhaseMaxRowList[i], Expr(yTBD), LCL, Expr(txtTBD), LCLtxt));
Eval(Substitute(NameExpr(addTxt), Expr(scriptNameTBD), "Avg Text "||Char(i), Expr(xTBD), PhaseMaxRowList[i], Expr(yTBD), Avg, Expr(txtTBD), Avgtxt));
Eval(Substitute(NameExpr(addTxt), Expr(scriptNameTBD), "UCL Text "||Char(i), Expr(xTBD), PhaseMaxRowList[i], Expr(yTBD), UCL, Expr(txtTBD), UCLtxt));
);
Re: 管理図に下限/上限と平均をプロットする以下は、リミット テーブルから値を取得してチャートに配置する非常に大まかなスクリプトです。 以下のコードを使用してスクリプト ガイドを読んで、コードがどのように機能するかを正確に理解することをお勧めします。
ヘルプ==>書籍==>スクリプト ガイド

Names Default To Here( 1 );
// Open the sample data table
dt = Open( "$SAMPLE_DATA\Quality Control\Pickles.jmp" );
// There isn't an adequate column to be used as a Phase column in the sample
// data table, so create one
dt << New Column( "MyPhase", character, formula( Char( Floor( Row() / 13 + 1 ) ) ) );
// Run the control Chart
ct = dt << Control Chart(
Phase( :MyPhase ),
Group Size( 1 ),
KSigma( 3 ),
Chart Col( :Acid, Individual Measurement( Phase Level( "1" ), Phase Level( "2" ) ), Moving Range( Phase Level( "1" ), Phase Level( "2" ) ) )
);
// Create a list called byPhase of the each of the Phase values
Summarize( dt, byPhase = by( :MyPhase ) );
// Find the max row for each phase to determine the X position on the chart
// for the placement of the text values
PhaseMaxRowList = {};
For( i = 1, i <= N Items( byPhase ), i++,
Insert Into( PhaseMaxRowList, Max( dt << get rows where( :MyPhase == byPhase[i] ) ) )
);
// Add the text to the chart
framebox = Report( ct )[frame box( 1 )];
framebox << Add Graphics Script(
Text Color( "Black" );
// Loop across the phases and add the 3 text values by pulling their values from the table
// and reformating the values
For( i = 1, i <= N Items( byPhase ), i++,
LCL = (Report( ct )["Individual Measurement of Acid"][Number Col Box( i )] << get)[1];
LCLtxt = "LCL=" || Format( LCL, "Fixed Dec", 5, 2 );
Avg = (Report( ct )["Individual Measurement of Acid"][Number Col Box( i + N Items( byPhase ) )] << get)[1];
Avgtxt = "Avg=" || Format( Avg, "Fixed Dec", 5, 2 );
UCL = (Report( ct )["Individual Measurement of Acid"][Number Col Box( i + (N Items( byPhase ) * 2) )] << get)[1];
UCLtxt = "UCL=" || Format( UCL, "Fixed Dec", 5, 2 );
Text( Center Justified, {PhaseMaxRowList[i] - 2, LCL + .1}, LCLtxt );
Text( Center Justified, {PhaseMaxRowList[i] - 2, Avg + .1}, Avgtxt );
Text( Center Justified, {PhaseMaxRowList[i] - 2, UCL + .1}, UCLtxt );
);
);Re: 管理図に下限/上限と平均をプロットするまた会ったね、
というわけで、昔使っていた古いソフトはMinitabです。
あなたの質問に答えると、値はソフトウェアから自動的にプロットされ、フェーズごとにもプロットされます (下の図を参照)。
前に共有した例では、フェーズはありません。
質問しすぎたことは承知していますが、スクリプトを使用してこれらのアクション (テーブルを削除し、チャートに値をプロットする) を含める方法について教えていただけますか?
再度、感謝します。

Re: 管理図に下限/上限と平均をプロットする値をチャートに追加できます。 フェーズがない場合、値はチャートの一部として表示されます

ただし、データにフェーズがある場合、指摘しているように、値はチャートの隣のテーブルにあり、チャートに表示したい. 古いソフトウェアで値を手動で追加できる場合は、JMP 内でチャートに注釈を付けるだけで同じことができます。

これをプログラムで行う必要がある場合は、スクリプトを使用して、表示されたテーブルから値を読み取り、IR チャートに配置するだけです。
古いソフトウェアの例では、異なるフェーズがあるように見えたにもかかわらず、制限のセットが 1 つしか表示されていないことに気付きました。 それは、制限がすべてのフェーズで同じだったからですか?
Re: 管理図に下限/上限と平均をプロットする誤解したのは私です。 この話題が出てきました前.
Re: 管理図に下限/上限と平均をプロットする
こんにちは、素早い回答ありがとうございます。
私の説明ではあまり明確ではないと思います。 下限、上限、および平均線の値をプロットする必要があります。
私が探している例を以下に示します。 左が以前使っていたソフト。
Show Summaries Limits テーブルから値をプロットできれば、テーブルを削除してレポートすることができます (プレゼンテーションに配置するのに最適なレイアウト)。

Re: 管理図に下限/上限と平均をプロットする縦軸をダブルクリックして基準線を追加するか、これを右クリックしてグラフ ボックスにカスタム グラフィック スクリプトを追加することができます。 2 番目のオプションについては、[ヘルプ] > [スクリプト インデックス] を実行し、[H 行] を検索します。