現在、工場の生産現場のダッシュボードに取り組んでいます。一方では、機体または航空機にドリルで開けられた穴を 3D 散布図で表示したいと考えています。もう一方では、各ドリル作業の開始時間を表示したいと考えています。これは基本的に、縦軸にいくつかのカテゴリ、横軸に連続時間がある散布図です。データには複数の機体があるため、最初の手順は 1 つを選択することです。選択後、非表示のデータ フィルターによって他のポイントが非表示になり、除外されます。これは主にうまく機能しますが、修正方法がわからない問題に遭遇しました。
掘削を行うマシンは複数あります。マシンにロードされたジョブ プログラムに基づいて、すべてのポイント (3D 散布図とタイムラインの両方) を色分けしたいと思います。色変数として :Job ID を選択してこれを行うと、2 つのグラフで :Job ID ごとに異なる色が使用されていることがわかります。たとえば、タイムラインで赤いポイントを選択すると、3D 散布図では青いポイントが選択されます。
How to make colors match between graphs?グラフ間で色を一致させるにはどうすればいいですか?
両方のグラフの色を同期/一致させる方法はあるでしょうか? アイデアがあれば教えてください。まったく行き詰まっています。
また、ぼやけてしまって申し訳ありません。実際の数値を表示してもよいかどうかわかりませんが、念のため示しておきます。
ありがとう!
*: グラフ ビルダー ウィンドウから取得したタイムライン プロットには次の内容が含まれます。
timeline = Graph Builder(
Size( 1300, 600 ),
Show Control Panel( 0 ),
Show Legend( 0 ),
Variables(
X( :Start Time Stamp ),
X( :Load Time Stamp, Position( 1 ) ),
Y( :Side ),
Y( :Longitudinal Location, Position( 1 ) ),
Y( :Machine, Position( 1 ) ),
Color( :Job ID )
),
Elements( Points( X( 1 ), X( 2 ), Y( 1 ), Y( 2 ), Y( 3 ) ) ),
),
3D 散布図には次の内容が表示されます。
scatter = Scatterplot 3D(
Y( :x, :y, :z ),
Coloring( :Job ID ),
Show Controls( 0 ),
Frame3D(
Set Graph Size( 500, 500 ),
Set Grab Handles( 0 ),
Set Rotation( -54, 0, 38 )
),
),上記のスクリプトから、凡例の削除や軸の制限の設定などに使用した余分なコードの一部を削除しました。それらは邪魔になります。
txnelson のアイデアは非常にシンプルでエレガントです。 [ジョブ ID] 列に値の色を追加し、[行] メニューで [列ごとに色またはマーク] を使用しました。 そしてすぐに色が 3D 散布図に現れました。タイムライン プロットは、色を一致させるためにもう少し手間がかかりました。 横軸に 2 つの変数を使用すると、グラフ ビルダーは自動的にポイントの列に色を割り当て、テーブルの行の色を上書きします。 しかし、グラフ ビルダーに Color( :Job ID ) を含めると、すべての色が完全に一致しました。
vince_faller の返信から学んだことに基づいて、これをスクリプトに簡単に変換できます。 どちらもとても役に立ちました。
あなたがた両方に感謝します!
あなたはその場でそれを行うことができます
Names Default to Here(1);
dt = Open("$SAMPLE_DATA\Big Class.jmp");
//this will give you a legend
// the expression just makes it so it's live in both windows
legend = Expr(dt << Color By Column(:age));
//you have to make a custom report to show the proper legend
new window("Example",
Hlistbox(
bivariate(Y(:height), X(:weight),
Where(:age <= 14)
),
legend
),
Hlistbox(
bivariate(Y(:height), X(:weight),
Where(:age >= 13)
),
legend
)
);
少なくともこれはあなたにアイデアを与えるはずです。
:Job ID の Value Colors 列プロパティを設定すると、ScatterPlot 3D と Graph Builder の両方でこれらの色が使用されます。