이변량 그래프의 꼭지점 찾기안녕하세요 여러분,
이변량 그래프에서 꼭지점을 얻으려고 합니다.
지금까지는 스크립트로 매개변수를 추출하고 엑셀 시트로 계산했습니다.
꼭짓점 함수 찾기가 JMP에 포함되어 있다고 확신하지만 찾을 수 없습니다.
정점을 직접 얻을 수 있는 방법이 있나요?
감사합니다
<파라미터 추출에 사용한 스크립트>
dt = Current data Table ();
biv=Bivariate(
Y( :contrast_100cm ),
X( :Offset_Z ),
Fit Polynomial( 2, {Line Color( {212, 73, 88} )} ),
Where( :site == "Para#4" )
);
rbiv = biv << report;
rbiv[tablebox(4)]<<MAKE data="https://community.jmp.com/" table=""></MAKE>
고급 통계 모델링자동화 및 스크립팅데이터 혼합 및 정리대량 맞춤화품질 및 프로세스 엔지니어링Re: 이변량 그래프의 꼭지점 찾기효과가 있었어
매우 감사합니다Re: 이변량 그래프의 꼭지점 찾기제가 여러번 포스팅했듯이, 보고서로 보내기() 그리고 보내다() 인수는 JMP에서 사용자 정의를 저장하기 위한 것입니다. 이는 사용자를 위한 것이 아닙니다. 물론 사용할 수 있습니다. 하지만 더 좋은 방법이 있습니다.
플롯에 답변을 추가하려는 것 같습니다. 이 예에서는 이를 수행하는 방법을 보여줍니다.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
// fit quadratic polynomial interpolating function
biv = dt << Bivariate(
Y( :weight ),
X( :height ),
Fit Line
);
// get reference to report layer
rbiv = biv << Report;
// get parameter estimates
parm = rbiv["Parameter Estimates"][Number Col Box( 1 )] << Get As Matrix;
// compute x intercept
ans = -parm[1] / parm[2];
rbiv[FrameBox(1)] << Add Graphics Script(
Text( { 52.5, 160 }, "X intercept is " || Char( ans ) )
);Re: 이변량 그래프의 꼭지점 찾기안녕하세요, 마크르베일리님,
더 많은 것을 물어봐도 될까요?
선형 함수를 해결하기 위해 스크립트를 약간 변경했는데 제대로 작동했습니다.
하지만 로그를 통해 결과를 확인하는 것은 트리박스를 통해 확인하는 것만큼 편리하지 않다는 것을 깨달았습니다.
내가 아는 한, 보고할 트리박스를 만드는 데는 디스패치 기능이 가장 적합합니다.
그래서 스크립트를 다음과 같이 변경했습니다. 그러나 작동하지 않습니다.
각 사이트(4개 사이트)에 대한 답변을 얻고 싶습니다. 그래서 그렇게 하려고 노력했지만 역시 효과가 없었어요.
문제를 해결할 수 있도록 손을 내밀어 주시겠어요?
매우 감사합니다
-> 나의 목적
1. 각 사이트의 ans를 추가합니다.
2. 보고서에 ans를 추가합니다.
-> 내 스크립트
이름의 기본값은 여기에 있습니다( 1 );
dt = 현재 데이터 테이블();
// 2차 다항식 보간 함수에 적합
biv = dt << 이변량(
Y( :CALU_CALU_intr_cy ),
X( :OC 오프셋 Y 음 ),
Fit Line( {선 색상( {212, 73, 88} )} ),
by(:사이트),
);
// 보고서 레이어에 대한 참조 가져오기
rbiv = biv << 보고;
// 매개변수 추정값을 얻습니다.
parm = rbiv["Parameter Estimates"][Number Col Box( 1 )] << Get As Matrix;
// x 절편을 계산합니다.
ans = -parm[1] / parm[2];
rbiv<<디스패치(
{"an"},
"안",
프레임박스,
{마커 크기(3)}
);
감사합니다
Re: 이변량 그래프의 꼭지점 찾기그만큼 보여주다() 함수는 기본적으로 열리지 않는 로그 창에 인수를 기반으로 텍스트를 씁니다. 선택하다 보기 > 로그 Windows를 사용 중이거나 창 > 로그 매킨토시를 사용하는 경우.
실제 평면에 존재한다고 가정하고 x절편을 추정하도록 스크립트를 수정했습니다. 그것은 근에 대한 이차 해법일 뿐입니다.
Names Default To Here( 1 );
// example of data
x = -5::5;
dt = New Table( "Non-Linear Data",
New Column( "X", Numeric, Continuous, Values( x ) ),
New Column( "Y", Numeric, Continuous, Values( x^2 - x - 12 ) )
);
// fit quadratic polynomial interpolating function
biv = dt << Bivariate(
Y( :Y ),
X( :X ),
Fit Polynomial( 2 )
);
// get reference to report layer
rbiv = biv << Report;
// get parameter estimates
parm = rbiv["Parameter Estimates"][NumberColBox( 1 )] << Get As Matrix;
// compute x intercept
ans = parm[2]^2 - 4*parm[3]*parm[1];
x intercepts = If( ans > 0,
(-parm[2] + { -1, 1 } * Sqrt( ans )) / (2*parm[3]);
);
Show( parm, x intercepts );Re: 이변량 그래프의 꼭지점 찾기친절한 답변 감사드립니다.
각 코드를 주의사항으로 설명해주셔서 이해하기 쉬웠습니다.
나는 당신의 코드를 수정하여 x 선형 함수의 절편.
하지만 아무것도 나오지 않았습니다.
사실 저는 "표시 기능"이 어떻게 작동하는지 잘 모르겠습니다.
이 문제를 해결하도록 도와주시겠어요?
감사합니다
Re: 이변량 그래프의 꼭지점 찾기답장을 보내 주셔서 감사합니다.
나는 스크립트를 테스트한 결과 이것이 바로 내가 찾던 것임을 알았습니다.
(전체 코드를 이해하지는 못했지만)
그런데 반응 표면에 의해 계산된 Offset_Z 값이 제가 직접 계산한 값과 약간 다르다는 것을 발견했습니다.
그 차이는 0.0003 미만이어서 별 문제가 되지 않았습니다.
도움을 주셔서 다시 한번 감사드립니다.
Re: 이변량 그래프의 꼭지점 찾기또는 또 다른 접근 방식은 적합 모델을 사용하고 JMP가 반응 표면 속성을 설정하도록 반응 표면 매크로를 사용하는 것입니다. 그러면 임계값을 해결하는 반응 표면 출력을 얻게 됩니다.
제가 구성한 일부 데이터를 사용하여 JMP에서 이 스크립트를 생성하도록 했습니다.
Fit Model(
Y( :contrast_100cm ),
Effects( :Offset_Z & RS, :Offset_Z * :Offset_Z ),
Personality( "Standard Least Squares" ),
Emphasis( "Effect Leverage" ),
Run(
:contrast_100cm << {Summary of Fit( 0 ), Analysis of Variance( 0 ),
Parameter Estimates( 0 ), Lack of Fit( 0 ), Scaled Estimates( 0 ),
Plot Actual by Predicted( 0 ), Plot Residual by Predicted( 0 ),
Plot Studentized Residuals( 0 ), Plot Effect Leverage( 0 ),
Plot Residual by Normal Quantiles( 0 ), Box Cox Y Transformation( 0 )}
),
SendToReport(
Dispatch(
{"Response contrast_100cm", "Whole Model"},
"Summary of Fit",
OutlineBox,
{Close( 1 )}
),
Dispatch(
{"Response contrast_100cm", "Whole Model"},
"Analysis of Variance",
OutlineBox,
{Close( 1 )}
),
Dispatch(
{"Response contrast_100cm", "Whole Model"},
"Parameter Estimates",
OutlineBox,
{Close( 1 )}
),
Dispatch(
{"Response contrast_100cm"},
"Response Surface",
OutlineBox,
{Close( 0 )}
)
)
)
다음은 임계값을 찾는 출력 부분입니다.

Re: 이변량 그래프의 꼭지점 찾기JMP에는 그러한 솔버가 없습니다. 그러나 2차 다항식 보간 함수를 피팅하는 중이므로 Offset_Z에 대한 1차 도함수를 0으로 설정하고 Offset_Z에 대해 풀기만 하면 됩니다. "정점"이란 함수의 최소 또는 최대를 의미한다고 가정합니다.
Names Default To Here( 1 );
// example of data
dt = Current Data Table();
// fit quadratic polynomial interpolating function
biv = dt << Bivariate(
Y( :contrast_100cm ),
X( :Offset_Z ),
Fit Polynomial( 2, {Line Color( {212, 73, 88} )} ),
Where( :site == "Para#4" )
);
// get reference to report layer
rbiv = biv << Report;
// get parameter estimates
parms = rbiv[NumberColBox( 1 )] << Get As Matrix;
// compute extremum
extremum = -parms[2] / (2*parms[3]);
Show( parms, extremum );