그래프 빌더 차트의 제목 설정저는 JMP 18에서 '그래프 빌더', '적합 그룹'을 사용하여 3개의 행으로 된 선형 차트를 만드는 스크립트를 작성했습니다. 기본적으로 표에는 여러 '시간 지점'에 걸쳐 여러 '생물 반응기'의 '분석물'에 대한 측정 값이 포함되어 있습니다. JMP 18에서는 각 차트에 대한 제목을 얻었지만 JMP 17을 사용하는 동료는 제목이 누락되어 차트가 무의미하다고 생각합니다. 저는 완전히 막혔습니다! 제목을 추가하기 위해 제가 할 수 있는 제안이 있습니까?
대본은 다음과 같습니다.
newWindow = New Window(reportName, tb = Tab Box());
//loop through the dataTables and add tab page box for each with a local data filter for dilution factor on left, and line charts on the right
for( i = 1, i <= NItems(dataTables), i++,
tb << Add(
Tab Page Box(
Title(dataTables[i] << get name),
Data Filter Context Box(
H List Box(
dataTables[i] << Data Filter(
Local,
Add Filter( columns( :Dilution Factor, :Type ) ),
Mode( Select( 1 ), Show( 1 ), Include( 1 ) )
),
V List Box(
dataTables[i] << Fit Group(
Graph Builder(
Size( 300, 300 ),
Show Control Panel( 0 ),
Variables(
X( :Time point ),
Y( :"Mean(Value)"n ),
Overlay( :Vessel )
),
Elements( Line( X, Y, Legend( 20 ) ) ),
By( :Analyte )
),
<<{Arrange in Rows( 3 )}
)
)
)
)
)
)
);
tb << set selected(1);In JMP 17 the title highlighted with the red arrow is missing for each chart:
자동화 및 스크립팅Re: 그래프 빌더 차트의 제목 설정환경 설정에서 이상한 설정을 배제하려면 다음 출력을 비교해 보세요.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
New Window( "test",
dt << Fit Group(
Graph Builder(
Ignore Platform Preferences(1), // next step: disable this line
Size( 300, 300 ),
Show Control Panel( 0 ),
Variables( X( :height ), Y( :weight ), Overlay( :sex ) ),
Elements( Line( X, Y, ) ),
By( :age )
),
<<{Arrange in Rows( 3 )}
)
);
다음 단계: 회선을 비활성화하고 다시 확인합니다.
샘플 데이터 세트에 문제가 없다면 귀하의 데이터에서 문제를 찾아야 합니다.
-> 공유 가능하신가요?
Re: 그래프 빌더 차트의 제목 설정JMP17에서 데이터 필터가 작동하지 않습니다.
Names Default To Here( 1 );
dts = {};
Insert Into(dts, Open("$SAMPLE_DATA/Big Class.jmp"));
Insert Into(dts, Open("$SAMPLE_DATA/Big Class Families.jmp"));
nw = New Window("", tb = Tab Box());
For(i = 1, i <= N Items(dts), i++,
tb << Add(
Tab Page Box(Title(dts[i] << get name),
Data Filter Context Box(
H List Box(
/*dts[i] << Data Filter(
Local,
Add Filter(
columns(:sex)),
Mode(Select(1), Show(1), Include(1))
),*/
V List Box(
dts[i] << Fit Group(
Graph Builder(
Size(300, 300),
Show Control Panel(0),
Variables(X(:height), Y(:weight), Overlay(:sex)),
Elements(Line(X, Y, )), By(:age)
),
<<{Arrange in Rows(3)}
)
)
)
)
)
)
);
<< Fit Group을 사용하려는 경우(그래프 빌더에 적합하지 않아 사용해야 할지 잘 모르겠지만 작동은 합니다) 몇 가지 옵션이 있습니다. 제목을 만든 후 제목을 수정하거나 다른 방식으로 제목을 만듭니다.
이것은 아마도 그다지 강력하지 않을 것이지만, 당신이 무엇을 할 수 있는지에 대한 아이디어를 줄 수 있습니다(Where 표현식에 의존하는 대신 열의 값을 사용하는 것이 가장 강력한 옵션일 가능성이 높음)
Names Default To Here( 1 );
dts = {};
Insert Into(dts, Open("$SAMPLE_DATA/Big Class.jmp"));
Insert Into(dts, Open("$SAMPLE_DATA/Big Class Families.jmp"));
nw = New Window("", tb = Tab Box());
For(i = 1, i <= N Items(dts), i++,
tb << Add(
Tab Page Box(Title(dts[i] << get name),
Data Filter Context Box(
H List Box(
dts[i] << Data Filter(
Local,
Add Filter(
columns(:sex)),
Mode(Select(1), Show(1), Include(1))
),
V List Box(
dts[i] << Fit Group(
Graph Builder(
Size(300, 300),
Show Control Panel(0),
Variables(X(:height), Y(:weight), Overlay(:sex)),
Elements(Line(X, Y, )), By(:age)
),
<<{Arrange in Rows(3)}
)
)
)
)
)
)
);
wait(0);
If(Word(1, JMP Version(), ".") == "17",
gb_obs = nw << XPath("//OutlineBox[@helpKey = 'Graph Builder']");
For Each({gb_ob}, gb_obs,
gb = gb_ob << Get Scriptable Object;
s = gb << get script;
w = Extract Expr(s, Where(Wild List()));
a = Substitute(Char(Arg(w, 1)), "==", "=");
gb << Title("Graph Builder " || Substr(a, 2))
);
);
편집: 데이터 필터를 사용하면 제목이 끊어집니다.
Re: 그래프 빌더 차트의 제목 설정JMP18에서 열별 작동 방식이 변경되어 두 버전 모두에서 작동하지 않으므로 다른 버전에 대해 별도의 방법을 사용하는 것이 가장 쉬울 수 있습니다.
Names Default To Here( 1 );
dts = {};
Insert Into(dts, Open("$SAMPLE_DATA/Big Class.jmp"));
Insert Into(dts, Open("$SAMPLE_DATA/Big Class Families.jmp"));
nw = New Window("", tb = Tab Box());
For(i = 1, i <= N Items(dts), i++,
tb << Add(
Tab Page Box(Title(dts[i] << get name),
Data Filter Context Box(
H List Box(
dts[i] << Data Filter(
Local,
Add Filter(
columns(:sex)),
Mode(Select(1), Show(1), Include(1))
),
If(Word(1, JMP Version(), ".") == "17",
Lineup Box(N Col(3),
gb = Graph Builder(
Size(300, 300),
Show Control Panel(0),
Variables(X(:height), Y(:weight), Overlay(:sex)),
Elements(Line(X, Y, )), By(:age)
)
)
,
gb = Graph Builder(
Size(300, 300),
Group Options(Layout("Arrange in Rows", N Across(3))),
Show Control Panel(0),
Variables(X(:height), Y(:weight), Overlay(:sex)),
Elements(Line(X, Y, )), By(:age)
)
)
)
)
)
)
);
사용자가 각 행에 있는 항목 수를 변경할 수 있게 하려면 개요 상자와 스크립트를 추가하면 됩니다.
Re: 그래프 빌더 차트의 제목 설정@jthi가 지적했듯이, 데이터 필터는 차이점의 한 가지 원인입니다. Fit Group이 데이터 필터에 응답하는 방식은 JMP 18+에서 변경되었습니다.
JMP 17과 JMP 18의 또 다른 큰 차이점은 그룹별 그룹 플랫폼이 추가되었다는 것입니다. JMP 18에서 이 새로운 플랫폼은 Fit Group과 유사한 레이아웃 옵션을 제공합니다. JMP 17에서는 레이아웃을 위해 Fit Group을 Line Up Box로 바꿀 수 있습니다. 두 가지를 결합하면 이 스크립트는 두 가지 모두에서 제게 상당히 잘 맞습니다.
dataTables = EvalList({
Open("$SAMPLE_DATA/Big Class.jmp"),
Open("$SAMPLE_DATA/Big Class Families.jmp")
});
newWindow = New Window("Reports", tb = Tab Box());
//loop through the dataTables and add tab page box for each with a local data filter for dilution factor on left, and line charts on the right
for( i = 1, i <= NItems(dataTables), i++,
tb << Add(
Tab Page Box(
Title(dataTables[i] << get name),
Data Filter Context Box(
H List Box(
dataTables[i] << Data Filter(
Local,
Add Filter( columns( :sex ) )
),
V List Box(
Line Up Box(NCol(3),
dataTables[i] << Graph Builder(
Size( 300, 300 ),
Show Control Panel( 0 ),
Variables(
X( :height ),
Y( :weight )
),
Elements( Line( X, Y, Legend( 20 ) ) ),
By( :age ),
Group Options( Layout( "Arrange in Rows", N Across( 3 ) ) )
)
)
)
)
)
)
)
);
tb << set selected(1);
17/18 사이의 레이아웃은 다릅니다. JMP 17에서는 LineUpBox가 그리드를 관리하는 반면, JMP 18에서는 Group Platform이 레이아웃을 관리하고 모든 LineUpBox에 자식이 1개만 있습니다.
다른 옵션으로는 By를 사용하는 대신 Graph Builder에서 Wrap 역할을 사용하는 것이 있지만, 그렇게 하면 공유 축과 범례가 제공되므로 원하지 않을 수 있습니다.
-그리고
Re: 그래프 빌더 차트의 제목 설정또 다른 옵션: 동료가 JMP18.1로 업데이트하고 JMP18과 함께 도입된 새로운 페이지 옵션을 사용하도록 합니다.:)
그를 위한 보너스:
더 이상 찾기에 문제가 없나요? 아니면 찾을 수 없나요?

Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
Graph Builder(
Variables(
X( :height ),
Y( :weight ),
Page( :age, Levels per Row( 3 ) ),
Overlay( :sex )
),
Elements( Points( X, Y ), Smoother( X, Y ) )
);
Re: 그래프 빌더 차트의 제목 설정이 작업에 도움을 주셔서 감사합니다. JMP 17에서 테스트하는 데 며칠이 걸렸지만 잘 작동합니다.
Re: 그래프 빌더 차트의 제목 설정이 제안에 감사드립니다. 저는 결국 JMP 17과 JMP 18 모두에 Line Up Box를 사용하게 되었습니다.