Comment réaliser un dessin par lots multi-groupes X lors du dessin du contour WAT :
La plate-forme de contour stipule que X ne peut être sélectionné que sur deux colonnes, mais j'ai plusieurs ensembles de X qui doivent correspondre à un Y
Voici une tentative pour afficher les cartes de contour.La complexité réside dans la recherche des colonnes correspondantes.Les noms de colonne sont incohérents.Le script ci-dessous illustre le genre de choses que vous devrez faire pour mieux faire correspondre les colonnes.Le script a été annoté pour permettre une meilleure compréhension de ce qui est utilisé pour tenter la correspondance

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 );
Merci pour votre réponse, la pièce jointe est mes données brutes, la colonne de rendement principale et de nombreuses colonnes X, j'ai besoin de dessiner un graphique de contour, c'est-à-dire que l'axe X est le périphérique N, l'axe Y est le périphérique P et le rendement en Z , pour un seul appareil, je peux facilement dessiner une carte de contour, Mais je ne peux dessiner qu'une seule carte à la fois, je veux dessiner toutes les cartes de comptage à la fois.

Si le problème correspond aux colonnes N vs P, un script peut le produire.Voici les correspondances que j'ai trouvées.

J'ai joint le tableau de données avec la liste complète que j'ai trouvée.
Si je suis sur la bonne voie, pouvez-vous indiquer quel serait le graphique que vous recherchez pour l'une de ces paires ?
Merci pour votre réponse, j'ai essayé d'adopter cette approche, mais j'ai tellement de colonnes X, comme dans le tableau ci-dessous, que je ne peux pas l'empiler par N-device match P-device, comme VTHSAT_PCM09A_NULVT_P63_D0715_D011_(V)_MEDIAN à VTHSAT_PCM10D_PULVT_P63_SDB_D0715_D011_(V)_MEDIAN,
parce que je veux trouver quelle corrélation d'appareil avec mon rendement, j'ai besoin de dessiner le contour par appareil, donc je veux dessiner rapidement tout le contour de l'appareil.Peut être réalisé par un script de contour créé ou modifié ?
| 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 |