그래프 빌더가 자동 확장되지 않음안녕하십니까,
대시보드에서 그래프 빌더 및 데이터 필터를 시작하고 있습니다. 그래프는 x축에 날짜이고 y축에 카운트입니다. 날짜를 필터링하면 날짜 범위 밖의 데이터가 그래프에서 사라지지만 그래프는 필터링된 범위 내의 날짜와 일치하도록 x축의 크기를 자동으로 조정하지 않습니다(대신 x축 날짜 범위는 필터링하기 전과 동일합니다. 날짜 범위).
데이터 테이블을 열고 열 속성으로 이동한 다음 축으로 이동한 다음 최소값과 최대값을 제거한 다음 작동한다는 것을 알고 있지만 자동 크기 조정이 자동으로 발생해야 합니다.
그래프 빌더 스크립트는 다음과 같습니다.
SPC = Open("C:\blahblahblah.csv", 보이지 않음);
column(SPC,"blah")<<데이터 유형(숫자)<<모델링 유형(연속)<<형식(최상,1);
열(SPC,"blah2")<<데이터 유형(숫자)<<모델링 유형(연속)<<형식(최상,1);
plot_box=vlistbox(
SPC << 그래프 빌더(
사이즈( 1372, 867 ),
제어판 표시( 0 ),
자동 재계산( 1 ),
자동 스트레칭( 0 ),
변수( X( : 실행 날짜 ), Y( :blah ), Y( :blah2 ), 오버레이( :blah3 ) ),
집단(
위치( 1, 1 ),
포인트( X, Y, 범례( 1 ), 지터( 1 ) ),
),
집단(
위치( 1, 2 ),
포인트( X, Y, 범례( 4 ), 지터( 1 ) ),
),
보고서 보내기(
보내다(
{},
"날짜 시간 실행",
스케일박스,
{간격( "일" ),
Inc( 3 ), 마이너 틱( 1 ),
(그런 다음 많은 참조 라인)
...
누군가 저에게 조언해 주시겠습니까?
고맙습니다 .
Re: 그래프 빌더가 자동 확장되지 않습니다.안녕하세요, 제가 찾은 한 가지 방법은 Graph Builder가 내가 원하는 X축 날짜 설정을 유지하고 필터링 시 이러한 설정으로 재조정할 수 있도록 날짜를 "서수" 데이터 유형으로 변경하는 것입니다.
Re: 그래프 빌더가 자동 확장되지 않습니다.x축의 참조선을 사용하여 JMP 14에서 유사한 크기 조정 동작을 봅니다. 즉, JMP가 스크립트나 참조 라인을 유지하려고 하는 것 같습니다.다음은 JSL을 통해 참조선을 지정하는 예입니다.
Dispatch(
{},
"Date",
ScaleBox,
{Format( "yyyyQq", 6 ), Min( 3092688000 ), Max( 3284668800 ),
Interval( "Year" ), Inc( 1 ), Minor Ticks( 0 ),
Add Ref Line( Informat("06Mar2003", "ddmonyyyy"), "Solid", "Gray", "", 1 ),
Add Ref Line( Informat("16Jul2006", "ddmonyyyy"), "Solid", "Black", "", 1 )}
)참조선을 추가하는 방법을 모의업으로 게시하면 크기 조정을 강제하는 버튼 상자를 추가하는 스크립트를 표시할 수 있습니다. JMP 11이 없기 때문에 테스트할 수는 없지만 작동할 것이라고 생각합니다.
Re: 그래프 빌더가 자동 확장되지 않습니다.당신의 답변에 감사드립니다.
이상하게도 눈금 잠금 및 눈금 잠금 해제를 수행할 때 기준선을 벗어난 날짜 범위에 대해 날짜가 조정되지 않습니다(기준선이 포함되지 않은 날짜 범위를 선택하려고 하면 날짜(x축) 스케일은 아니지만 해당 범위 밖의 데이터는 제외됩니다. 기준선 그룹 내에 있는 날짜 범위를 선택하면 날짜(x축)가 스케일됩니다). JMP 11이 있습니다. 아마도 이것은 이 버전의 버그입니까? 아니면 참조 라인에 코딩하지 말았어야 합니까? 그래도 x축을 따라 참조선을 그리는 방법을 모르겠습니다...
Re: 그래프 빌더가 자동 확장되지 않습니다.GraphBuilder에서 동일한 동작을 봅니다.나는 옵션을 알아 차렸다 저울 잠금 GraphBuilder에서. 그러나 GraphBuilder가 생성될 때 Lock Scales(0)를 지정하면 x축이 여전히 재조정되지 않습니다.GraphBuilder가 생성된 후 Lock Scales를 켜고 끄면 축의 크기가 조정되지만 사용자 지정 축 서식이 지정되지 않습니다. 아래 예에서는 yyyyQq를 사용합니다. 아래 스크립트는 JMP 12, 13 및 14에서 실행됩니다.
JMP 14가 있는 경우 52행에서 /*를 제거하고 스크립트를 실행하십시오.JMP 14에는 필터가 변경될 때 실행되는 스크립트인 데이터 필터 핸들러가 있습니다. 따라서 특별한 축 형식이 있는 경우 핸들러에서 지정할 수 있습니다.
GraphBuilder 호출 함수의 Lock Scales(0)이 설명대로 작동하지 않는 것 같습니다. 그러나 활성화 및 비활성화가 작동하는 것 같습니다.
Names Default to Here(1);
dt = Open("$sample_data/Australian Tourism.jmp");
gb = dt << Graph Builder(
Show Control Panel( 0 ),
Show Legend( 0 ),
Lock Scales(0),
Variables(
X( :Date ),
Y( :Name( "Revenue ($'000)" ) ),
Y( :Name( "Bed occupancy rate (%)" ) ),
Y( :Name( "Average length of stay (days)" ) )
),
Elements(
Position( 1, 1 ),
Points( X, Y, Legend( 4 ) ),
Smoother( X, Y, Legend( 3 ) )
),
Elements(
Position( 1, 2 ),
Points( X, Y, Legend( 1 ) ),
Smoother( X, Y, Legend( 2 ) )
),
Elements(
Position( 1, 3 ),
Points( X, Y, Legend( 6 ) ),
Smoother( X, Y, Legend( 5 ) )
),
SendToReport(
Dispatch(
{},
"Date",
ScaleBox,
{Format( "yyyyQq", 6 ), Min( 2953282344.82759 ), Max( 3408220800 ),
Interval( "Year" ), Inc( 1 ), Minor Ticks( 0 )}
),
Dispatch( {}, "graph title", TextEditBox, {Set Text( "Tourism Trends" )} )
)
);
filter = gb << Local Data Filter(
Add Filter(
columns( :Year )
)
);
gb << Lock Scales(1);
wait(0);
gb << Lock Scales(0);
/*
f = function({a},
print(a);
gb << Lock Scales(1);
wait(0);
gb << Lock Scales(0);
gb << Dispatch(
{},
"Date",
ScaleBox,
{Format( "yyyyQq", 6 ),
Interval( "Year" ), Inc( 1 ), Minor Ticks( 0 )}
);
);
rs = filter << Make Filter Change Handler( f );