여보세요,
1. 두 개의 그래프를 ppt의 한 슬라이드에 저장하는 방법을 알고 싶습니다.
지금 내 스크립트는 슬라이드 당 하나의 그래프를 ppt에 저장합니다.
하나의 슬라이드에서 두 개의 그래프를 비교해야합니다. 또한 데이터에 대해 100 개의 그래프를 생성하고 ppt에 100 개의 슬라이드가 있으면 분석하기가 어렵습니다.
2. 개인 그래프를 스케일하는 방법은 무엇입니까?
//******************Open Data table***********************//
dt = Open( "$Downloads\Measure - Subset of JA63025.10A_raw_para_Stacked.jmp" );
//************************ Create new Columns to segregate the test names to group and plot graphs ***********************//
dt << New Column( "Test Number (MSB of Label)",
Character,
Nominal,
Formula( Num( Substr( :Label, Contains( :Label, ":p" ) - Num( 10 ), Contains( :Label, ":p" ) - Num( 6 ) ) ) )
);
dt << New Column( "Test Description", Character, Nominal, Formula( Substr( :Label, Contains( :Label, ":NVM_" ) + Num( 5 ), 100 ) ) );
dt << New Column( "NVM Parameter Name",
Character,
Nominal,
Formula( Substitute/*###*/(Substr( :Label, Contains( :Label, ":NVM_" ) + Num( 5 ), 100 ), "[1]", "") )
);
dt << New Column( "Measurements.",
Character,
Nominal,
Formula(
If( 16600 <= :Name( "Test Number (MSB of Label)" ) <= 16603,
Substitute( :Test Description, "[1]", "_BiasA_Pre_refcell_Erase" ),
If( 16629 <= :Name( "Test Number (MSB of Label)" ) <= 16632,
Substitute( :Test Description, "[1]", "_BiasA_Post_refcell_Erase" )
)
)
)
);
dt << New Column( "Measurements..",
Character,
Nominal,
Formula( If( 10100 <= :Name( "Test Number (MSB of Label)" ) <= 10103, Substitute( :Test Description, "[1]", "" ) ) )
);
dt << New Column( "Measurements...",
Character,
Nominal,
Formula(
If( 10100 <= :Name( "Test Number (MSB of Label)" ) <= 10103,
Empty(),
If( 16600 <= :Name( "Test Number (MSB of Label)" ) <= 16603,
Empty(),
If( 16629 <= :Name( "Test Number (MSB of Label)" ) <= 16632,
Empty(),
Substitute( :Test Description, "[1]", "" )
)
)
)
)
);
//*******************Plot Variability Charts****************************//
dtsum = Current Data Table();
colnames = dtsum << get column names( character );
Show( colnames );
//nw = New Window( "Plots", myVLB = V List Box() );
New Window( "Graphs",
For( i = 23, i <= N Items( colnames ), i++, // We have change i value based on the column where our modified column to plot graphs starts
gb = Variability Chart(
invisible,
Y( :Data ),
Y Scale( Left, Right ),
X( Column( colnames[i] ) ),
Analysis Type( "Choose best analysis (EMS REML Bayesian)" ),
Vertical Charts( 0 ),
Variability Summary Report( 1 ),
Std Dev Chart( 0 ),
Mean of Std Dev( 0 ),
Show Box Plots( 1 ),
Mean Diamonds( 1 ),
By( :NVM Parameter Name ),
);
);
//myVLB << append( Report( gb ) );
);
//**********************************Save Script to Data Table ************************//
dt << New script(
"Plots",
For( i = 23, i <= N Items( colnames ), i++, // We have change i value based on the column where our modified column to plot graphs starts
Variability Chart(
//invisible,
Y( :Data ),
Y Scale( Left, Right ),
X( Column( colnames[i] ) ),
Analysis Type( "Choose best analysis (EMS REML Bayesian)" ),
Vertical Charts( 0 ),
Variability Summary Report( 1 ),
Std Dev Chart( 0 ),
Mean of Std Dev( 0 ),
Show Box Plots( 1 ),
Mean Diamonds( 1 ),
By( :NVM Parameter Name ),
);
)
);
//*****************************************EXPORT GRAPHS TO PPT**********************************//
For( i = 23, i <= N Items( colnames ), i++, // We have change i value based on the column where our modified column to plot graphs starts
nn = dt << Variability Chart(
invisible,
Y( :Data ),
Y Scale( Left, Right ),
X( Column( colnames[i] ) ),
By( :NVM Parameter Name ),
Analysis Type( "Choose best analysis (EMS REML Bayesian)" ),
Vertical Charts( 0 ),
Variability Summary Report( 0 ),
Std Dev Chart( 0 ),
Mean of Std Dev( 0 ),
Show Box Plots( 1 ),
Mean Diamonds( 1 ),
);
If( i == 23,
nn << Save Presentation( "$Downloads/jmp_example2.pptx" ),
nn << Save Presentation( "$Downloads/jmp_example2.pptx", Append )
);
);
Open( "$Downloads/jmp_example2.pptx" );
내가 사용하는 방법은 슬라이드를 JMP 내에 있도록 슬라이드를 만든 다음 원하는 각 pptx 페이지 당 하나의 그림 개체 인 최종 표시 창에 그림으로 복사하는 것입니다.
아래는 간단한 예를 보여주는 스크립트입니다.
Names default to here(1);
dt=Open("$SAMPLE_DATA/big class.jmp");
// Create the 2 graphs
fg = dt << Fit Group(
Oneway(
Y( :height ),
X( :sex ),
SendToReport(
Dispatch( {}, "Oneway Plot", FrameBox, {Frame Size( 463, 305 )} )
)
),
Oneway(
Y( :weight ),
X( :sex ),
SendToReport(
Dispatch( {}, "Oneway Plot", FrameBox, {Frame Size( 463, 305 )} )
)
),
<<{Arrange in Rows( 1 )}
);
// Place the graphs into a single picture
nw=new window("The Picture", report(fg)[outlinebox(1)]<<GET picture=""></GET>Jim, 나는 똑같은 생각을하고 있었지만이 경우와 같이 얼마나 많은 그래프가 미리 있는지 알 수 없다면 어떨까요? n 쌍의 그래프를 만드는 방법은 무엇입니까?
내가 일반적으로 이것을 처리하는 방법은 스크립트가 쌍을 이루는 그림 개체를 만들 때 만드는 것입니다. 그런 다음 저널에 추가하십시오. 따라서 여러 변형 차트를 만드는 위의 경우 루프 반복 1에 대해 V List Box () 또는 H List Box를 만들고 첫 번째 반복 그래프를 List Box ()에 추가 한 다음 반복 루프 2에 추가합니다. 출력을 목록 상자에 추가 한 다음 목록 상자 그림을 저널 창에 복사 한 다음 목록 상자 ()를 삭제하고 반복 3 등으로 다시 시작하십시오.
XPath를 사용하여 모든 변동성 차트가있는 후에 저널을 쿼리하고 개요 상자 수를 찾은 다음 쌍을 빌드하고 최종 저널 프레젠테이션 출력이 될 수있는 새 저널 창에 배치 할 수 있습니다.
그리고 다른 방법이 사용되고 있다고 확신합니다
나는 실제로 기능이 이미 있다고 생각합니다. 대부분의 경우 Outline Box를 SlideBox ()로 사용합니다. 필요에 따라 출력을 빌드 한 다음 아웃 라인 상자 ()에 배치 한 다음 내가 작성중인 저널에 추가합니다. JMP가 pptx 파일로 개요 상자를 처리하는 방식 때문에 개요 상자 ()가 선택됩니다. 아웃 라인 상자 () 제목은 슬라이드의 제목이되고, 아웃 라인 상자 ()에 배치 한 "그림"은 슬라이드의 내용이됩니다.
예. "SlideBox ()"에 대한 기본값이 설정되어있을 수 있지만 대부분의 경우 함께 조합 한 개체 조합에는 여러 개의 H 목록 상자, V 목록 상자, 라인업 상자 등이 필요합니다. 내가 원하는대로 디스플레이.
이것의 핵심은 개요 상자 안에있는 모든 개요 상자를 하나의 그림으로 복사해야한다는 것입니다. 필요한 구조를 사용하여 원하는 페이지를 작성해야하며 마지막 단계는 << 사진 가져 오기를 사용하여 원하는 페이지를 << 프리젠 테이션 저장 위치로가는 개요 상자에 추가하는 것입니다.