Stai inviando il messaggio di riepilogo a una tabella. Tutto tra parentesi è un argomento per il messaggio di riepilogo, ad esempio gruppo, intervallo.
Non puoi semplicemente aggiungere una nuova colonna: questo non è un parametro valido per il messaggio di riepilogo. È tuttavia un messaggio che è possibile inviare a una tabella. Quindi crea prima la tabella di riepilogo, quindi invia il nuovo messaggio di colonna a quello:
dtSumm = DataTable("data") << Summary( . . . );
dtSumm << NewColumn( . . .);Data Table( "Data" ) << Summary(
Group( :Row, :Col ),
Range( :Data Trace ),
New Column("ABC",formula(:Range(Data Trace)*1E15)),
Freq( "None" ),
Weight( "None" )
);
Sto cercando di creare una nuova colonna come mostrato sopra per cui ho multiplo la colonna nella riga sopra di essa per 1E15. La tabella viene creata ma la nuova colonna "ABC" non viene visualizzata. Forse c'è qualcosa che non va nella mia sintassi. Qualche idea molto gradita. Grazie Mark
Ciao David, grazie per la tua risposta. Come principiante assoluto, non ho familiarità con la sintassi. Ho copiato l'intero script di seguito. Ti consente di scegliere un numero di file, creare una tabella per ciascuno, quindi concatenare i dati in una singola tabella, quindi creare una tabella di riepilogo e da lì un grafico della mappa di calore. Nella tabella di riepilogo "Intervallo" è il colore per variabile nella mappa di calore. Tuttavia, vorrei moltiplicare i valori per 1E15 ed essere anche in grado di inserire un titolo nel grafico. Non sono sicuro di come farlo, ma sembra che dovrebbe solo prendere una riga o due o aggiungere * 1E15 davanti a qualcosa. È frustrante perché quello che voglio fare è così semplice ma non essere un programmatore sembra molto difficile (credo di avere solo difficoltà con la lingua / sintassi)
names = Pick File(
"Select Data File",
"$DESKTOP",
{"Text Files|txt;csv", "All Files|*"},
1,
0,
"Data",
multiple
);
nitems = N Items(names);
path = substr(names[1],2,Contains(names[1],"/",-1)-1);
For(i=1, i <= nitems, i++, names[i] = substr(words(names[i],"/"),7));
names = Files In Directory(path);
Data = New Table("Data", Character, Nominal);
col = New Column( "DC Bias Volt", Numeric, "Continuous", Format( "Best", 12 ) );
col = New Column( "Data Trace", Numeric, "Continuous", Format( "Best", 12 ) );
col = New Column( "File" );
col = New Column( "Row" );
col = New Column( "Col" );
For(i=1, i <= nitems, i++,
dt = Open(Concat(path, names[i]),
columns(
New Column( "DC Bias Volt", Numeric, "Continuous", Format( "Best", 12 ) ),
New Column( "Data Trace", Numeric, "Continuous", Format( "Best", 12 ) ),
New Column( "Memory Trace", Numeric, "Continuous", Format( "Best", 12 ) )
),
Import Settings(
End Of Line( CRLF, CR, LF ),
End Of Field( Tab, CSV( 0 ) ),
Strip Quotes( 1 ),
Use Apostrophe as Quotation Mark( 0 ),
Use Regional Settings( 0 ),
Scan Whole File( 1 ),
Treat empty columns as numeric( 0 ),
CompressNumericColumns( 0 ),
CompressCharacterColumns( 0 ),
CompressAllowListCheck( 0 ),
Labels( 1 ),
Column Names Start( 6 ),
Data Starts( 7 ),
Lines To Read( 101 ),
Year Rule( "20xx" )
)
);
Metadata = Words(names[i], "_");
Die_Row = Substr( Metadata[6], 2, 2 );
Die_Col = Substr( Metadata[6], 5, 2 );
dt << New Column( "File", Numeric, Nominal );
dt << New Column( "Row", Character, Nominal );
dt << New Column( "Col", Character, Nominal );
:File << Set Each Value( i );
:Row << Set Each Value( Die_Row );
:Col << Set Each Value( Die_Col );
If(Metadata[1] == "CSV",
Data << Concatenate( dt, "Append to First Table" ));
Close(dt,NoSave);
);
Data Table( "Data" ) << Summary(
Group( :Row, :Col ),
Range( :Data Trace ),
Freq( "None" ),
Weight( "None" )
);
Graph Builder(
Size( 1112, 704 ),
Variables( X( :Col ), Y( :Col ), Color( :Name( "Range(Data Trace)" ) ) ),
Elements( Heatmap( X, Y, Legend( 5 ) ) ),
SendToReport(
Dispatch(
{},
"Col",
ScaleBox,
{Min( 0 ), Max( 60 ), Inc( 1 ), Minor Ticks( 0 )}
),
Dispatch(
{},
"Col",
ScaleBox( 2 ),
{Min( 0 ), Max( 60 ), Inc( 1 ), Minor Ticks( 0 )}
)
)
);