나는 한 해를 다른 해와 비교하여 아래와 같은 그래프를 만들어 달라는 요청을 받았습니다. 하지만 JMP(또는 솔직하게 다른 어떤 것)에서 이 작업을 수행하는 방법을 모르겠습니다. 누구든지 나를 올바른 방향으로 안내해 줄 수 있습니까?

이를 달성하는 한 가지 방법이 있습니다. 데이터 테이블이 주어지면

Graph Builder를 사용하여 그래픽을 추가하여 아래 차트를 제작했습니다.

아래는 위의 그래프를 생성한 JSL입니다.
Names Default To Here( 1 );
dt = Data Table( "Example" );
gb = dt << Graph Builder(
Size( 648, 450 ),
Show Control Panel( 0 ),
Variables( X( :Month ), Y( :Value ) ),
Elements( Points( X, Y, Legend( 3 ), Error Interval( "Range" ) ) ),
SendToReport(
Dispatch(
{},
"Value",
ScaleBox,
{Min( -8.0923781757601 ), Max( 122.008163265306 ), Inc( 20 ),
Minor Ticks( 0 )}
),
Dispatch(
{},
"400",
ScaleBox,
{Legend Model(
3,
Properties( 0, {Line Color( 16 )}, Item ID( "Value", 1 ) ),
Properties( -1, {Line Color( 16 )}, Item ID( "Jan", 1 ) ),
Properties( -1, {Line Color( 16 )}, Item ID( "Mean", 1 ) )
)}
),
Dispatch(
{},
"graph title",
TextEditBox,
{Set Text( "Previous 5-year average 2023" )}
),
Dispatch( {}, "X title", TextEditBox, {Set Text( "" )} ),
Dispatch( {}, "Y title", TextEditBox, {Set Text( "" )} ),
Dispatch( {}, "400", LegendBox, {Legend Position( {3, [-1, -3]} )} )
)
);
// Add the Circles and Lines
Report( gb )[FrameBox( 1 )] <<
Add Graphics Script(
For Each Row(
If( :Type == "High",
Fill Color( "Gray" );
theHigh = :Value;
theLow = :Value[Row() + 1];
Pen Color( "Gray" );
Pen Size( 4 );
X = Matrix( Floor( Row() / 2 ) ) || Matrix( Floor( Row() / 2 ) );
y = Matrix( theHigh ) || Matrix( theLow );
Line( X, Y );
theList = {};
Insert Into( theList, X[1] );
Insert Into( theList, Y[1] );
Circle( theList, 7, "Fill" );
,
Fill Color( "Red" );
theList = {};
Show( Floor( Row() - 1 ) );
Insert Into( theList, Floor( (Row() - 1) / 2 ) );
Insert Into( theList, :value );
Circle( theList, 7, "Fill" );
// Add the numerical value in the circle
Text Color( "White" );
// Subtract a fudge factor to better center the text
theList[2] = :Value - 3;
Text Font( "Segoe UI", 14, "Bold" );
Text( Center Justified, theList, Char( :Value ) );
)
)
);이것은 많은 도움이 됩니다. (높음과 낮음 대신) 한 해를 보내고 싶다면 어떻게 해야 합니까?
제가 사용하고 있는 데이터 파일은 다음과 같습니다. 2022년과 2023년을 월별로(각 바이러스당 하나씩) 비교하고 싶습니다.
여기 아주 가까이 다가갈 수 있고 스크립팅이 필요하지 않은 또 다른 방법이 있습니다.

이 그래프 스타일을 얻는 한 가지 방법은 데이터를 두 개의 열로 분할하여 데이터 테이블의 모양을 변경한 다음 간격 놓기 영역에서 해당 열을 사용하는 것입니다. 나는 @scwise 의 갤러리 시리즈 사진 중 하나에서 이 트릭을 배웠습니다. 그 밖의 모든 것은 색상 변경, 주석 상자 추가, 다양한 차트 요소 숨기기입니다.
https://community.jmp.com/t5/Discovery-Summit-Europe-2022/Pictures-from-the-Gallery-7-Select-Advanced-Graph-Builder-Views/ta-p/446126
도움이 되었기를 바랍니다!
@scott_allen 방법(저보다 훨씬 좋음)과 귀하의 데이터를 사용하여 Graph Builder를 사용하여 대화형으로 이러한 그래프를 만들었습니다.

내가 당신의 데이터에 해야 할 유일한 일은
- 2022년과 2023년의 데이터만 유지하면서 데이터의 하위 집합을 만듭니다.
- Tables=>Split을 사용하여 하위 집합 데이터 테이블을 분할합니다.
- 분할 기준: 연도
- 열 분할: 비율
- "모두 유지"를 선택하세요.
새로운 분할 데이터 테이블 사용

- 열린 그래프 빌더
- 각 바이러스에 대해 별도의 그래프를 만들기 위해 바이러스를 선택하고 페이지 드롭손으로 드래그했습니다.
- Month 열을 선택하고 X축 드롭 영역으로 드래그했습니다.
- 2022 및 2023 열을 모두 선택하고 Y축 드롭 영역으로 드래그했습니다.
- 2년 열을 연결하려면 2022년과 2023년을 선택하고 간격 드롭 영역으로 드래그합니다.
- 범례에서 파란색 점을 마우스 오른쪽 버튼으로 클릭하고 마커 크기를 선택합니다.
- "기타"를 선택하세요
- 40의 유형
- 빨간색 점에 대해 6단계를 반복합니다.
- 점을 마우스 오른쪽 버튼으로 클릭하고 원하는 대로 색상을 변경할 수 있습니다.
가장 중요한 일은 도움말 풀다운 메뉴에서 제공되는 문서를 읽는 것입니다.
- JMP 발견
- JMP 사용
- 필수 그래프 작성(특히 그래프 빌더 섹션)