如何在不同 Y 軸上使用不同顏色註解背景?下面的 JSL 可以用不同的顏色註解 X 軸上 100 到 120 的區域,但不能跨越不同的 Y 軸。如何修改它以在 Y 軸上為不同變數使用不同背景顏色註釋不同變數?

Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
gb = dt << Graph Builder(
Variables(X(:weight), Y(:height),Y(:age)),
Elements(Points(X, Y, Legend(3))),
SendToReport(
Dispatch(
{},
"weight",
ScaleBox,
{Add Ref Line(100, "Solid", "blue", "", 5),
Add Ref Line(120, "Solid", "blue", "", 5)}
)
)
);
rep = gb << report;
framebox = rep[frame box(1)];
framebox << Add Graphics Script(
Transparency(0.5);
Fill Color("Gray");
Rect(100, Y Origin() + Y Range(), 120, Y Origin() , 1)
);數據探索和視覺化回覆:如何在不同的 Y 軸上以不同的顏色註解背景?當您有多個軸(或群組、換行或頁面)時,您就有多個 FrameBox,因此您可以為每個框架添加單獨的圖形腳本。簡化版如下
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
gb = dt << Graph Builder(
Variables(X(:weight), Y(:height), Y(:age)),
Elements(Points(X, Y, Legend(3)))
);
rep = gb << report;
fbs = rep << XPath("//FrameBox");
fbs[1] << Add Graphics Script(
Transparency(0.5);
Fill Color("Gray");
Rect(100, Y Origin() + Y Range(), 120, Y Origin(), 1);
);
fbs[2] << Add Graphics Script(
Transparency(0.5);
Fill Color("Green");
Rect(100, Y Origin() + Y Range(), 120, Y Origin(), 1);
);

回覆:如何在不同的 Y 軸上以不同的顏色註解背景?附加問題:如果X軸的資料類型為“文字”,如何繪製顏色框?
例如,我想用特定的顏色標記從TIM到JOE的範圍。
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
gb = dt << Graph Builder(
Variables(X(:name), Y(:height), Y(:age)),
Elements(Points(X, Y, Legend(3)))
);
rep = gb << report;
fbs = rep << XPath("//FrameBox");
fbs[1] << Add Graphics Script(
Transparency(0.5);
Fill Color("Gray");
Rect("TIM", Y Origin() + Y Range(), "JOE", Y Origin(), 1);
);
fbs[2] << Add Graphics Script(
Transparency(0.5);
Fill Color("Green");
Rect("TIM", Y Origin() + Y Range(), "JOE", Y Origin(), 1);
);回覆:如何在不同的 Y 軸上以不同的顏色註解背景?您必須找出正確的 x 軸值,然後利用這些值
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
gb = dt << Graph Builder(
Variables(X(:name), Y(:height), Y(:age)),
Elements(Points(X, Y, Legend(3)))
);
rep = gb << report;
fbs = rep << XPath("//FrameBox");
fbs[1] << Add Graphics Script(
Transparency(0.5);
Fill Color("Gray");
Rect(17, Y Origin() + Y Range(), 37, Y Origin(), 1);
);
fbs[2] << Add Graphics Script(
Transparency(0.5);
Fill Color("Green");
Rect(17, Y Origin() + Y Range(), 37, Y Origin(), 1);
);
這可能很簡單,有時也很困難,但您可以透過檢查 X 軸設定和標籤來了解這一點

回覆:如何在不同的 Y 軸上以不同的顏色註解背景?如何使用JSL讀取目前X軸上LABEL和VALUE的對應?我找不到讀取目前 X 軸上的 LABEL 和對應 VALUE 的方法。
我想在文字標籤上使用 MATCH 來取得 VALUE,然後用彩色方塊突出顯示特定的值範圍。
回覆:如何在不同的 Y 軸上以不同的顏色註解背景?如果我沒記錯的話...(目前)最簡單的方法是使用總計表或匯總從資料表中讀取它。
回覆:如何在不同的 Y 軸上以不同的顏色註解背景?我想根據使用者選擇的區域在 X 軸上標記顏色。但是,由於使用者使用本機資料篩選器,圖表上的 X 軸會發生變化。由於X軸的文字形式是可變的,所以我無法指定固定值和標籤對應。我希望能夠直接存取圖表X軸上的標籤和值,或能夠根據使用者在本機資料過濾器上的選擇來確定X軸上對應的值和標籤。如下面的腳本所示,我希望允許使用者選擇本機資料過濾器,並另外選擇要用顏色標記的 X 軸。如果無法取得圖表X軸目前顯示的項目或本機資料篩選器上所選取的結果,則無法順利取得對應的值和標籤。有什麼辦法可以達到這個目的嗎?Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
gb = dt << Graph Builder(
Variables(X(:name), Y(:height), Y(:age)),
Elements(Points(X, Y, Legend(3))),
Local Data Filter(
Add Filter(
columns( :name ),
Where(
:name == {"ALFRED", "ALICE", "AMY", "BARBARA", "CAROL", "CHRIS",
"CLAY"}
),
Display( :name, N Items( 15 ), Find( Set Text( "" ) ) )
)
),
);
rep = gb << report;
fbs = rep << XPath("//FrameBox");
fbs[1] << Add Graphics Script(
Transparency(0.5);
Fill Color("Gray");
Rect(2, Y Origin() + Y Range(), 4, Y Origin(), 1);
);
fbs[2] << Add Graphics Script(
Transparency(0.5);
Fill Color("Green");
Rect(2, Y Origin() + Y Range(), 4, Y Origin(), 1);
); 回覆:如何在不同的 Y 軸上以不同的顏色註解背景?如果您有本地過濾器來管理,它很可能會變得更加複雜。您想要哪個範圍的顏色?當用戶過濾掉這一點或其中一端時會發生什麼?
回覆:如何在不同的 Y 軸上以不同的顏色註解背景?是的,隨著本地資料過濾器的存在,它確實變得更加複雜。因此,我想知道是否有任何技術可以獲取圖表 X 軸上的當前項目或讀取本地資料過濾器的選定選項,以便計算當前值和標籤的映射表。
回覆:如何在不同的 Y 軸上以不同的顏色註解背景?您可以從本機資料過濾器取得不同類型的值,然後可以解析/利用這些值
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Car Poll.jmp");
dist = dt << Distribution(
Nominal Distribution(Column(:country))
);
ldf = dist << Local Data Filter(
Add Filter(columns(:sex), Where(:sex == "Female")),
Mode(Show(1), Include(1))
);
Show(ldf << get script, ldf << Get where clause, ldf << Get Filtered Rows);

請記得檢查沒有過濾行的特殊情況