JSL 스크립트로 생성하면 선이 더 매끄러워집니다.내가 여기서 무엇을 잘못하고 있는지 알아내는 데 도움을 줄 수 있는 사람이 있습니까?
Graph Builder(
Size(984, 563),
Show Control Panel(1),
Variables(X(:X), Y(As Column(Y))),
Elements(Line(X, Y, Legend(3), Connection("Curve")), Points(X, Y, Legend(4)))
)
내 선이 더 매끄러워지고, 모든 점을 곡선 연결로 만지기를 원합니다. JMP 콘솔에서 차트를 만들었고 잘 작동했습니다. 세션 스크립트에서 JSL을 복사하기도 했지만 JSL로 실행할 때마다 더 매끄러워집니다.
한 가지 더 질문이 있습니다. 매끄럽게 하는 것이 연속적인 숫자 열에 그려집니다. 명목형으로 변경하면 약간의 영향이 있을 수 있다고 생각했는데 전혀 만들어지지 않았습니다(선도 매끄럽게 하는 것도 없음). 선은 명목형 숫자 열에서 작동하지 않습니까?
자동화 및 스크립팅기본 데이터 분석 및 모델링데이터 탐색 및 시각화Re: JSL 스크립트로 생성하면 선이 더 매끄러워집니다.Line이 아닌 Curve 연결을 사용하므로 매끄러움이 제공됩니다. 또한 Row order를 활성화하지 않는 한 동일한 X축 값에 대한 값이 많으면 모든 점을 연결할 수 없습니다.
행 순서 없음

행 순서로 (먼저 데이터를 가중치에 따라 정렬했습니다)

Re: JSL 스크립트로 생성하면 선이 더 매끄러워집니다.
코드를 사용하면 이런 결과를 얻을 수 있습니다.


하지만 수동으로 줄을 추가할 때

다음 - 연결을 곡선으로 변경합니다



내가 바라는 것을 이룬다. 내 모든 지점을 만지는 곡선.
그러면 코드를 통해 어떻게 이를 달성할 수 있을까?
Re: JSL 스크립트로 생성하면 선이 더 매끄러워집니다.Smoother(포인트 포함)는 일부 열 선택의 기본 설정이며, 이것이 JMP가 그래프에 사용하는 이유일 수 있습니다. Smoother 버전에서 가져온 JMP 생성 스크립트는 어떻게 보입니까?
제게는 이게 괜찮은 것 같아요.
Names Default To Here(1);
dt = New Table("Untitled",
Add Rows(7),
Compress File When Saved(1),
New Column("Column 1", Numeric, "Continuous", Format("Best", 12), Set Values([1, 2, 3, 4, 5, 6, 7])),
New Column("Column 2", Numeric, "Continuous", Format("Best", 12), Set Values([100, 89, 60, 50, 40, 20, 10]))
);
gb = dt << Graph Builder(
Size(528, 454),
Show Control Panel(0),
Variables(X(:Column 1), Y(:Column 2)),
Elements(Points(X, Y, Legend(3)), Line(X, Y, Legend(6), Connection("Curve")))
);

Re: JSL 스크립트로 생성하면 선이 더 매끄러워집니다.이건 나한테 효과가 없네요.
다시 시도해 봤습니다.
저는 수동으로 매끄럽게 만들지 않았습니다. 저는 선을 만들고 거기에 점을 추가하고 곡선으로 변경했습니다. 스크립트를 복사했습니다(설명에 있는 것과 동일). 하지만 같은 스크립트가 선이 아니라 매끄럽게 만듭니다.
질문- 스크립트를 실행할 때, 왼쪽에 있는 제어판에 Points and Line이 보이나요? 아니면 Points and Smoother가 보이나요? 저는 Line 스크립트를 실행할 때 points and smoother가 보입니다.
코드에 지그재그 형태로 더 많은 포인트를 추가한 다음 스크립트를 실행해 볼 수 있나요?
Re: JSL 스크립트로 생성하면 선이 더 매끄러워집니다.어떤 JMP 버전을 실행하고 계신가요? 저는 18.1.2를 실행하고 있습니다. 제 스크립트를 실행해 보셨나요? 데이터 테이블을 제공해 주실 수 있나요?
Names Default To Here(1);
dt = New Table("Untitled",
Add Rows(10),
Compress File When Saved(1),
New Column("Column 1", Numeric, "Continuous", Format("Best", 12), Set Values([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])),
New Column("Column 2", Numeric, "Continuous", Format("Best", 12), Set Values([100, 80, 90, 60, 70, 40, 30, 35, 20, 10]))
);
gb = dt << Graph Builder(
Variables(X(:Column 1), Y(:Column 2)),
Elements(Points(X, Y, Legend(3)), Line(X, Y, Legend(6), Connection("Curve")))
);

Re: JSL 스크립트로 생성하면 선이 더 매끄러워집니다.내 JMP 버전은

나는 열의 이름을 바꾸었고, X와 Y를 제외한 다른 열도 삭제했습니다. 이것이 당신에게 효과가 있는지 확인해 보세요.
Re: JSL 스크립트로 생성하면 선이 더 매끄러워집니다.괜찮은 것 같나요?

Names Default To Here(1);
dt = Open("$DOWNLOADS/data_jmp.jmp");
gb = dt << Graph Builder(
Variables(X(:X), Y(:Y)),
Elements(Line(X, Y, Legend(5), Connection("Curve")), Points(X, Y, Legend(6)))
);Re: JSL 스크립트로 생성하면 선이 더 매끄러워집니다.네, 저한테는 개별적으로는 같은 것이 작동하는데요, 루프에서는 왜 작동하지 않을까요?:( . 뭐가 문제야. 이 스크립트를 한 번 확인해 볼 수 있어 -
createDashboard = Function({dtMaxF, dtMaxR, normMeanColsF, normMeanColsR, direction},
New Window(direction || " Dashboard",
Tab Box(
"Maximum Values",
V List Box(
For(i = 1, i <= N Items(normalizedColumns), i++,
Graph Builder(
Size(984, 563),
Show Control Panel(1),
Variables(X(:X), Y(As Column(normalizedColumns[i]))),
Elements(
Line(X, Y, Legend(5), Connection("Curve")),
Points(X, Y, Legend(6))
)
)
)
),
"Normalized Average Values",
V List Box(
For(i = 1, i <= N Items(normMeanColsF), i++,
Graph Builder(
Size(984, 563),
Show Control Panel(1),
Variables(X(:X), Y(As Column(normMeanColsF[i]))),
Elements(
Line(X, Y, Legend(5), Connection("Curve")),
Points(X, Y, Legend(6))
)
)
),
For(i = 1, i <= N Items(normMeanColsR), i++,
Graph Builder(
Size(984, 563),
Show Control Panel(1),
Variables(X(:X), Y(As Column(normMeanColsR[i]))),
Elements(
Line(X, Y, Legend(5), Connection("Curve")),
Points(X, Y, Legend(6))
)
)
)
)
)
)
);
createDashboard(
dtMaxForward, dtMaxReverse, normalizedMeanColumns, normalizedMeanColumns, "Analysis"
);Re: JSL 스크립트로 생성하면 선이 더 매끄러워집니다.dtMaxF, dtMaxR은 함수에서 무엇에 사용되나요? normalizedColumns는 함수에서 어디에서 나오나요?
Re: JSL 스크립트로 생성하면 선이 더 매끄러워집니다.dtMaxF, dtMaxR을 무시하세요(코드에서 제거하겠습니다). 분석할 수 있도록 전체 스크립트를 첨부합니다.
Re: JSL 스크립트로 생성하면 선이 더 매끄러워집니다.아주 작은 것부터 시작하세요. 테이블 생성이 제대로 작동한다면 단일 그래프 스크립팅으로 시작할 수 있습니다. 그런 다음 다른 테이블에서 몇 가지 다른 그래프로 확장할 수 있습니다. 플로팅할 때 테이블 참조가 누락되어 수식이 예상대로 작동하지 않을 수 있습니다( Eval Insert, Eval Expr, Parse 및 Substitute를 사용하여 한 표현식을 다른 표현식에 삽입 ).
Re: JSL 스크립트로 생성하면 선이 더 매끄러워집니다.알겠습니다. 제가 시도해 보겠습니다. 음, 지금까지 모든 공식이 작동하지만 다시 확인해 보겠습니다.