WAT 윤곽을 그릴 때 다중 그룹 X 배치 그리기를 달성하는 방법:
윤곽선 플랫폼은 X가 두 개의 열만 선택할 수 있다고 규정하지만 하나의 Y와 일치해야 하는 X 세트가 여러 개 있습니다.
다음은 등고선 지도를 표시하려는 시도입니다. 일치하는 열을 찾는 것이 복잡합니다. 열 이름이 일치하지 않습니다. 아래 스크립트는 열 일치 작업을 더 잘 수행하기 위해 수행해야 할 작업의 종류를 보여줍니다. 일치를 시도하는 데 사용되는 내용을 더 잘 이해할 수 있도록 스크립트에 주석이 추가되었습니다.

Names Default To Here( 1 );
dt = Data Table( "WAT_Contour" );
// Build list of columns to be graphed
headerTypeList = {};
colNameList = {}; // The full name of the column
deviceTypeList = {}; // The P or N
commonNameList = {}; // The items that are common between P and N columns
// Loop across all columns to find target columns
// The code here is a best guess on determining the items needed to be able
// to match up the columns. There are inconsistancies in the column names,
// between VTSAT and VTHSAT etc. and also within a single type like VTSAT
// This section will need to be worked out to get all of the matches
For( i = 1, i <= N Col( dt ), i++,
colName = Trim( Column( dt, i ) << get name );
If(
Word( 1, colName, "_" ) == "VTSAT",
Insert Into( headerTypeList, "VTSAT" );
Insert Into( colNameList, colName );
If( Word( 2, colName, "_" ) == "N" | Word( 2, colName, "_" ) == "P",
Insert Into( deviceTypeList, Word( 2, colName, "_" ) );
Insert Into(
commonNameList,
Substr(
colName,
Length( Word( 1, colNameList[N Items( colNameList )], "_" ) )
+Length( Word( 2, deviceTypeList[N Items( deviceTypeList )], "_" ) ) + 4
)
);
,
Insert Into( deviceTypeList, Substr( Word( 3, colName, "_" ), 1, 1 ) );
Insert Into(
commonNameList,
Substr(
colName,
Length( Word( 1, colName, "_" ) ) + Length( Word( 2, colName, "_" ) )
+Length( Word( 3, colName, "_" ) ) + 4
)
);
);,
Word( 1, colName, "_" ) == "VTHSAT",
Insert Into( headerTypeList, "VTHSAT" );
Insert Into( colNameList, colName );
Insert Into( deviceTypeList, Substr( Word( 3, colName, "_" ), 1, 1 ) );
Insert Into(
commonNameList,
Substr(
colName,
Length( Word( 1, colName, "_" ) ) + Length( Word( 2, colName, "_" ) )
+Length( Word( 3, colName, "_" ) ) + 4
)
);
);
);
dtNames = New Table( "Names",
New Column( "Header", character, values( headerTypeList ) ),
New Column( "Column Name", character, values( colNameList ) ),
New Column( "Device Type", character, values( deviceTypeList ) ),
New Column( "Common", character, values( commonNameList ) )
);
// Split data table to get columns that match
dtSplit = dtNames << Split(
Split By( :Device Type ),
Split( :Column Name ),
Group( :Header, :Common ),
Sort by Column Property
);
// Delete non matching rows
dtSplit << select where(:P == "" | :N == "" );
dtSplit << delete rows;
// Create the Contour Maps
New Window( "Contour Maps", lub = Lineup Box( N Col( 3 ) ) );
// Loop across matches
For( i = 1, i <= N Rows( dtSplit ), i++,
lub << append(
dt << Contour Plot(
X( Column( dt, dtSplit:N[i] ), Column( dt, dtSplit:P[i] ) ),
Y( :"W/C BSCAN VMIN YIELD"n ),
Show Data Points( 0 ),
Fill Areas( 0 ),
Label Contours( 0 ),
Transform( "Range Normalized" ),
Specify Contours( Min( 0.5 ), Max( 0.9 ), N( 5 ) )
)
)
);
// Clean up the data tables no longer needed.
// Uncomment the below lines when having the interium tables
// no longer need to be displayed
// close( dtNames, nosave );
// close( dtSplit, nosave );
답장을 보내 주셔서 감사합니다. 첨부 파일은 내 원시 데이터이며 기본에는 산출량 열과 많은 X 열이 포함되어 있습니다. 등고선 그래픽을 그려야 합니다. 즉, X축은 N 장치, Y축은 P 장치, 산출량은 Z입니다. , 단일 장치의 경우 등고선 지도를 쉽게 그릴 수 있지만 한 번에 하나의 지도만 그릴 수 있습니다. 모든 카운터 지도를 한 번에 그리고 싶습니다.

문제가 N 대 P 열과 일치하는 경우 스크립트가 이를 생성할 수 있습니다. 제가 찾은 일치 항목은 다음과 같습니다.

제가 생각해낸 전체 목록이 포함된 데이터 테이블을 첨부했습니다.
제가 올바른 길을 가고 있다면, 이 쌍 중 하나에 대해 찾고 있는 그래픽이 무엇인지 제공할 수 있습니까?
응답해 주셔서 감사합니다. 이 접근 방식을 시도했지만 아래 표와 같이 X 열이 너무 많아서 VTHSAT_PCM09A_NULVT_P63_D0715_D011_(V)_MEDIAN에서 VTHSAT_PCM10D_PULVT_P63_SDB_D0715_D011_ 과 같은 N 장치 일치 P 장치로 스택할 수 없습니다. (V)_미디어,
내 수율과 어떤 장치의 상관 관계를 찾고 싶기 때문에 장치별로 윤곽을 그려야 하기 때문에 모든 장치 윤곽을 빠르게 그리고 싶습니다. 윤곽 스크립트를 생성하거나 편집하여 달성할 수 있습니까?
| VTHSAT_PCM06F_PULVT_P63_D0715_D242_(V)_MEDIAN |
| VTHSAT_PCM06G_PULVT_P63_D607_D242_(V)_MEDIAN |
| VTHSAT_PCM06H_PULVT_P63_SDB_D04_D009_(V)_MEDIAN |
| VTHSAT_PCM09A_NULVT_P63_D0715_D011_(V)_MEDIAN |
| VTHSAT_PCM09B_NLVT_P63_D0715_D011_(V)_MEDIAN |
| VTHSAT_PCM09C_NSVT_P63_D0715_D011_(V)_MEDIAN |
| VTHSAT_PCM09D_PULVT_P63_D0715_D011_(V)_MEDIAN |
| VTHSAT_PCM09E_PLVT_P63_D0715_D011_(V)_MEDIAN |
| VTHSAT_PCM09F_PSVT_P63_D0715_D011_(V)_MEDIAN |
| VTHSAT_PCM09G_NLVT_P63_SDB_D04_D011_(V)_MEDIAN |
| VTHSAT_PCM09H_PLVT_P63_SDB_D04_D011_(V)_MEDIAN |
| VTHSAT_PCM10A_NSVT_P63_SDB_D04_D011_(V)_MEDIAN |
| VTHSAT_PCM10B_NULVT_P63_SDB_D0715_D011_(V)_MEDIAN |
| VTHSAT_PCM10C_PSVT_P63_SDB_D04_D011_(V)_MEDIAN |
| VTHSAT_PCM10D_PULVT_P63_SDB_D0715_D011_(V)_MEDIAN |
| VTHSAT_PCM10E_NSVT_P63_D04_D011_(V)_MEDIAN |
| VTHSAT_PCM10F_NULVT_P63_D04_D011_(V)_MEDIAN |
| VTHSAT_PCM10G_PSVT_P63_D04_D011_(V)_MEDIAN |
| VTHSAT_PCM10H_PULVT_P63_D04_D011_(V)_MEDIAN |
| VTHSAT_PCM15A_NLVT_P79_D04_D009_(V)_MEDIAN |
| VTHSAT_PCM15B_NLVT_P79_D0715_D009_(V)_MEDIAN |