Hi
Assume I have a table with columns 1-10.
then I have a 3 variables. for example A=2, B=7, C=10
I want to write a script to select columns with amounts of A, B, and C and plot it vs col.1.
here it should select columns of 2, 7, and 10 and use overlay plot to plot it vs column1.
Thanks
Selecting columns by name is easy enough:
dt = Current Data Table();
a = 2;
b = 7;
c = 9;
Column( dt, Char( a ) ) << Set Selected;
Column( dt, Char( b ) ) << Set Selected;
Column( dt, Char( c ) ) << Set Selected;
But I'm not sure you need to select them to create the overlay plot you are looking for. You can just do this:
Overlay Plot( X( :Name( "1" ) ), Y( Column( dt, Char(a) ), Column( dt, Char(b) ),
Column( dt, Char(c) ) ) );
If you have a variable number of Y variables, you can construct a list of them and set that list as the Y variables for overlay plot:
colList = {};
colList = Insert( colList, Column( dt, Char( a ) ) );
colList = Insert( colList, Column( dt, Char( b ) ) );
colList = Insert( colList, Column( dt, Char( c ) ) );
Overlay Plot( X( :Name( "1" ) ), Y( EvalList(colList) ) );
HTH,
Eric
Selecting columns by name is easy enough:
dt = Current Data Table();
a = 2;
b = 7;
c = 9;
Column( dt, Char( a ) ) << Set Selected;
Column( dt, Char( b ) ) << Set Selected;
Column( dt, Char( c ) ) << Set Selected;
But I'm not sure you need to select them to create the overlay plot you are looking for. You can just do this:
Overlay Plot( X( :Name( "1" ) ), Y( Column( dt, Char(a) ), Column( dt, Char(b) ),
Column( dt, Char(c) ) ) );
If you have a variable number of Y variables, you can construct a list of them and set that list as the Y variables for overlay plot:
colList = {};
colList = Insert( colList, Column( dt, Char( a ) ) );
colList = Insert( colList, Column( dt, Char( b ) ) );
colList = Insert( colList, Column( dt, Char( c ) ) );
Overlay Plot( X( :Name( "1" ) ), Y( EvalList(colList) ) );
HTH,
Eric
If you want to use column 1 as x, and columns 2, 7, and 10 as Y, regardless of their names, then this will do the trick:
dt = current data table();
xc = 1; // column 1
a = 2; // column 2
b = 7; // column 7
c = 9; // column 9
overlay plot(x(column(xc)), y(column(a), column(b), column(c)));
Hi Eric,
I have another question looks like last one:
columns a, b, c are variables; how can I add new column and give it a formula by use of a,b, and c?
I wrote following script but column doesn't show the formula.
New Column( "a /b",Numeric,Continuous,Format( "Best", 12 ),
Formula( :column(char(a)) / :column( char(b)) ));
thank you for your recommendation