こんにちは、
231 個の一意のサンプル (RunID というラベルが付けられている) を含む大規模なデータ セットがあり、各一意のサンプルには X、Y、Z 値のセットがあります。グラフの「サーフェス プロット」ツールを使用して、これらの 231 個の実行ごとに 3D プロットを作成し、新しいウィンドウに 231 個のグラフを表示します。スタイルがサーフェスになるようにこの表示を変更し、サーフェスを変更して連続グラデーションを表示したいと考えています。ただし、231 個のプロットすべてに対してこれを手動で実行したくありませんが、231 個の一意の RunID すべてを処理するようにスクリプトを設定する方法がわかりません。スクリプト ウィンドウの出力を見ると、最初のプロットにリストされている RunID だけでなく、すべての一意の RunID に対してこれを実行するように "where" 関数に何かを配置する必要があることがわかります。
これは簡単なことのように思えますが、JMP のディスカッションでは何も見つかりません。
Surface Plot(
Columns( :X, :Y, :Z ),
Datapoints Choice( "Surface" ),
Surface Color Theme( "Green to Black to Red" ),
Surface Color Theme2( "Green to White to Red" ),
Surface Color Theme3( "White to Black" ),
Surface Color Theme4( "Blue to Gray to Red" ),
Response Column Fill( "Continuous Gradients" ),
Response Column Color Theme( "Blue to Green to Red" ),
Response Column Color Theme2( "Blue to Gray to Orange" ),
Response Column Color Theme3( "Spectral" ),
Response Column Color Theme4( "Jet" ),
Response( :Z ),
Surface Color Method( "Solid", "Solid", "Solid", "Solid" ),
SetVariableAxis( :X, Axis Data( {} ) ),
SetVariableAxis( :Y, Axis Data( {} ) ),
SetZAxis( :Z, Current Value( -170000 ), Axis Data( {} ) ),
SetXVariable( :X ),
SetYVariable( :Y ),
Frame3D( Set Rotation( -54, 0, 38 ) ),
Where( :RunID == "0a6609" )
);変更してみる
Where( :RunID == "0a6609" )
に
By( :RunID)
すべてのグラデーションなどを複製する必要があります
変更どこ(...)にby(:RunID)
赤い三角形の保存スクリプトを使用する場合、選択肢の 1 つは by 変数です。
Option to create the script with by group.Option to create the script with by group.Option to create the script with by group.Option to create the script with by group.Option to create the script with by group.Option to create the script with by group.Option to create the script with by group.Option to create the script with by group.Option to create the script with by group.Option to create the script with by group.Option to create the script with by group.グループごとにスクリプトを作成するオプション。