/*""" Graph Builder에서 y값을 얻으려는 시도 LineSeg 작성자: jthi 생성 날짜: 2024-07-30 생성 JMP 버전: JMP Pro 18.0.0 설명: 이 아이디어를 제공한 원본 게시물(LinesSeg) https:/ /community.jmp.com/t5/Discussions/How-to-get-exact-cumulative-Prob-at-specified-value-in-CDF-Plot/mp/777203 """*/ 이름 기본값은 여기(1) ; //
https://community.jmp.com/t5/JMPer-Cable/Understanding-cubic-splines/ba-p/39511 흥미로울 수 있습니다. dt = Open("$SAMPLE_DATA/Semiconductor Capability.jmp"); 슬라이더_x = 200; nw = New Window("테스트", V List Box(align("center"), V List Box( Text Box("X를 변경하도록 조정"), Slider Box(110, 530, Slider_x, nw << 업데이트 창, << 너비 설정(1000)) ), Text Box("다른 맞춤을 확인하려면 그래프 작성기의 부드러운 설정을 변경하세요."), gb = dt << 그래프 작성기( 크기(1000, 600), 제어판 표시(1) ), 창에 맞춤("켜기"), Variables(X(:PNP1), Y(:NPN1)), Elements(Smoother(X, Y, Legend(4))) ); fb = 보고서(gb)[FrameBox(1)]; /* ls = fb << Find Seg(LineSeg(1)); m_x = ls << X 값 가져오기; m_y = ls << Y 값 가져오기; smooth = ls << 부드러움 얻기; idx = Loc Sorted(m_x, Matrix(xval))[1]; // {추정치, Std_Error, 진단} = 선형 회귀(m_y[idx::idx+1], m_x[idx::idx+1]); // yval = 추정치[2] * xval + 추정치[1]; idx = Loc Sorted(m_x, Matrix(xval))[1]; yval = 보간(xval, m_x, m_y); Report(gb)[AxisBox(1)] << 참조선 추가(xval); Report(gb)[AxisBox(2)] << 참조선 추가(yval); */ /* m_x[2::N 행(m_x)::2] - m_x[1::N 행(m_x) - 1::2] m_y[2::N 행(m_y)::2] - m_y[1::N 행(m_y) - 1::2] sl = 스플라인 스무딩(m_x, m_y, 스무스); */ Report(gb)[FrameBox(1)] << 그래픽 스크립트 추가( ls = fb << Find Seg(LineSeg(1)); m_x = ls << X 값 가져오기; m_y = ls << Y 값 가져오기; Marker(마커 상태(3), m_x, m_y); Line(m_x, m_y); Interpolate(slider_x, m_x, m_y); , {slider_x, yval}); V Line(slider_x); H Line(yval); Text(오른쪽 맞춤, Eval List({slider_x, yval + 1}), Eval Insert("(^Round(slider_x, 3)^ , ^Round(yval, 3)^)")); 피크 = m_y[1::N 행(m_y) - 2] < m_y[2::N 행(m_y) - 1] & m_y[2::N 행(m_y) - 1] > m_y[3::N 행(m_y)] | m_y[1::N 행(m_y) - 2] > m_y[2::N 행(m_y) - 1] & m_y[ 2::N 행(m_y) - 1] < m_y[3::N 행(m_y)]; peak_idx = Loc(피크) + 1; 채우기 색상("빨간색"); States(색상 상태("빨간색"), 마커 상태(15)), m_x[peak_idx], m_y[peak_idx]) );