turn on suggestions

Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.

Showing results for

- JMP User Community
- :
- Discussions
- :
- Discussions
- :
- Re: column reference plot of graph builder

Topic Options

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Get Direct Link
- Email to a Friend
- Report Inappropriate Content

Oct 10, 2017 2:56 PM
(1370 views)

Thank you for giving amazing suggestions.

I encountered something else and I have always been curious about this. Whenever I come across this, I try to stack to circumvent the problem.

In a graph builder, how to plot without knowing the name of the column

```
collist =fudt<< get column names(string);
qdt=Char(collist[9]); //Assuming I want to plot column number 9 on the Y axis, say for example "Data_ABC"
gbfc = fudt<<Graph Builder(
Size( 1899, 922 ),
Show Control Panel( 0 ),
Variables(
X( :Index ),
X( :Lot, Position( 1 ) ),
X( :Wafers, Position( 1 ) ),
Y( :qdt),// THIS DOESN't WORK - I want to understand the syntax
Color( :temp )
)
Elements( Points( X( 1 ), X( 2 ), X( 3 ), Y, Legend( 33 ) ) )
);
```

Thank you.

1 ACCEPTED SOLUTION

Accepted Solutions

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Get Direct Link
- Email to a Friend
- Report Inappropriate Content

Oct 10, 2017 3:10 PM
(2726 views)

Solution

```
dt = Current Data Table();
cdlg = Column Dialog( clist = ColList( "Pick 2 Columns", Min Col( 2 ), Max Col( 2 ) ) );
cols = cdlg["clist"];
newColExpr = Expr( dt << New Column( "Radius", Numeric, Formula( Sqrt( Expr( cols[1] ) ^ 2 + Expr( cols[2]; ) ^ 2 ) ) ) );
Eval( Eval Expr( newColExpr ) );
```

Best

Uday

Uday

9 REPLIES

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Get Direct Link
- Email to a Friend
- Report Inappropriate Content

Oct 10, 2017 3:10 PM
(2727 views)

```
dt = Current Data Table();
cdlg = Column Dialog( clist = ColList( "Pick 2 Columns", Min Col( 2 ), Max Col( 2 ) ) );
cols = cdlg["clist"];
newColExpr = Expr( dt << New Column( "Radius", Numeric, Formula( Sqrt( Expr( cols[1] ) ^ 2 + Expr( cols[2]; ) ^ 2 ) ) ) );
Eval( Eval Expr( newColExpr ) );
```

Best

Uday

Uday

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Get Direct Link
- Email to a Friend
- Report Inappropriate Content

Oct 10, 2017 3:28 PM
(1360 views)

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Get Direct Link
- Email to a Friend
- Report Inappropriate Content

Oct 11, 2017 5:50 AM
(1334 views)

Your variable qdt points to the name of the column. It is not a column itself. You have to reference it using the construct column(fudt, qdt):

```
gbfc = fudt << Graph Builder(
Size( 1899, 922 ),
Show Control Panel( 0 ),
Variables(
X( :Index ),
X( :Lot, Position( 1 ) ),
X( :Wafers, Position( 1 ) ),
Y( Column( fudt, qdt ) ), // use column pointed to by the qdt variable
//Y( :qdt), // THIS DOESN't WORK - I want to understand the syntax
Color( :temp ),
),
Elements( Points( X( 1 ), X( 2 ), X( 3 ), Y, Legend( 33 ) ) )
);
```

Highlighted

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Get Direct Link
- Email to a Friend
- Report Inappropriate Content

Oct 11, 2017 12:09 PM
(1321 views)

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Get Direct Link
- Email to a Friend
- Report Inappropriate Content

Oct 14, 2017 7:36 PM
(1247 views)

Uday,

Thanks for your post. Here i can see the fomula code as follows. Can you explan what means cols&#**91**;**1**&#**93 and cols[2]?**

Formula**(** Sqrt**(** Expr**(** cols&#**91**;**1**&#**93**; **)** ^ **2** + Expr**(** cols&#**91**;**2**&#**93**; **)** ^ **2** **)** **)**

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Get Direct Link
- Email to a Friend
- Report Inappropriate Content

Oct 14, 2017 9:17 PM
(1238 views)

@GoodMan,

Thanks for pointing out . I recollected and recalled that from the post . Not the way I would do it .

```
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
ColNames = dt << Get Column Names("String");
Stmt = "";
Stmt = ":" || ColNames[2] || "*2";
Eval( Parse( Eval Insert("\[ dt << New Column("Age_Squared",Numeric,Continuous,Formula(^Stmt^)); ]\" ) ) );
```

Best

Uday

Uday

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Get Direct Link
- Email to a Friend
- Report Inappropriate Content

Oct 14, 2017 11:03 PM
(1230 views)

Thanks. Following your new code, go back the the previous example, still i have some problem. Can you help me?

```
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
cdlg = Column Dialog( clist = ColList( "Pick 2 Columns", Min Col( 2 ), Max Col( 2 ) ) );
cols = cdlg["clist"];
newColExpr = Expr( dt << New Column( "Radius", Numeric, Formula( Sqrt( Expr( cols ) ^ 2 + Expr( cols) ^ 2 ) ) ) );
Eval( Eval Expr( newColExpr ) );
```

GM

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Get Direct Link
- Email to a Friend
- Report Inappropriate Content

Oct 14, 2017 11:53 PM
(1225 views)

I checked your previous code again. Now i understand that [=[. So now I can figure it out now. Thank you anyway!

GM

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Get Direct Link
- Email to a Friend
- Report Inappropriate Content

Oct 15, 2017 6:44 AM
(1206 views)

Those were meant to be square brackets. I've edited the post and corrected that.

-Jeff