cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Try the Materials Informatics Toolkit, which is designed to easily handle SMILES data. This and other helpful add-ins are available in the JMP® Marketplace
Choose Language Hide Translation Bar
BHarris
Level VI

How do I plot mathematical functions with JMP?

I realize that JMP isn't a mathematical function plotter, but suppose I have a function:  y=((v1+v2)*sin(v3+arcsine(v1/(v1+v2)))/sin(pi()-v3-arcsine(v1/(v1+v2))-v4/v1)-v1)

 

... and I'd like to plot it using Graph Builder.  Is there a convenient way to do this type of thing with JMP?  (preferably without resorting to JSL)

 

Seems like it would involve building a full-factorial matrix of inputs v1 thru v4, but it's not clear to me how to do that, even with the DOE FFD platform, especially if I'd like some of those variables to have hundreds of values, e.g., v1 to be 0 thru 5000 every 10.

19 REPLIES 19
BHarris
Level VI

Re: How do I plot mathematical functions with JMP?

GC still exists, it's available on the app store for the latest Mac OS.

Re: How do I plot mathematical functions with JMP?

I do not think that Graph Builder will work, even though it can plot the graph of a function of one independent variable. The only roles available for a case like this is X and Y. You have four independent variables, so the plot is 5 dimensions.

 

Would the Profiler suffice? If so, make a new data table. Create a data column for V1-V4 and Y. You do not need a grid. Add two rows to the data table and enter the minimum and maximum value for each independent variable. Enter the formula for the function to the Y column.

 

table.JPG

 

Then select Graph > Profiler and enter Y for the formula. You will likely have to manually adjust the Y axis in the profiler. The algorithm won't detect the cyclic extremes in your function well on its own.

 

profiler.JPG

 

I attached the data table for my set up and a table script to launch the profiler for you to play with.

BHarris
Level VI

Re: How do I plot mathematical functions with JMP?

Actually, Graph Builder is amazing for 4+ dimensions -- every drop-box in the UI is basically accepting a different dimension (though Map Shape and Interval might be exceptions). So here, I'd probably do y = y, x = v1, groupX = v2, groupY = v3, and overlay = v4. I've never even heard of the "Profiler", so I'll need to go learn about it. Thx!

Re: How do I plot mathematical functions with JMP?

I did not mean to imply that Graph Builder is limited to just two variables. But visualizing this function would require some clear thinking about what you wanted to show and how you wanted to show it. I agree that GB can bring in more than two variables through different roles.

 

Also using the grouping and overlay roles limits the display to the levels in the column, so you would also have to build the data table more carefully to get the groups you want.

BHarris
Level VI

Re: How do I plot mathematical functions with JMP?

I understand -- I think I was mostly interested in knowing *how* to build the data table if I knew what levels I wanted for each of the inputs. Basically, is there an easy way to build a full-factorial-matrix data table given a min, increment, and max value for each variable?

Re: How do I plot mathematical functions with JMP?

Use the DOE > Classical > Full Factorial design platform. You can ignore or delete the meta-data that is created, too. You won't need it since you are not fitting empirical data.

BHarris
Level VI

Re: How do I plot mathematical functions with JMP?

That platform seems limited to mostly single-digit number of values for each variable. I tried putting in "100" for the number of values, but the UI doesn't practically support that, the boxes to type in values are too small. Wish it would allow something like: 0:50:750
Jeff_Perkinson
Community Manager Community Manager

Re: How do I plot mathematical functions with JMP?


@BHarris wrote:
I understand -- I think I was mostly interested in knowing *how* to build the data table if I knew what levels I wanted for each of the inputs. Basically, is there an easy way to build a full-factorial-matrix data table given a min, increment, and max value for each variable?

Take a look at the Sequence() function (it's the Row functions in the Formula Editor),  and also Tables->Join, where you'll find a Cartesian join option.

 

Two data tables, one column each, Sequence() formulaTwo data tables, one column each, Sequence() formula

Join Dialog, Cartesian Join optionJoin Dialog, Cartesian Join option

Resulting data tableResulting data table

-Jeff
BHarris
Level VI

Re: How do I plot mathematical functions with JMP?

"Cartesian join", there it is. Thanks!
Jeff_Perkinson
Community Manager Community Manager

Re: How do I plot mathematical functions with JMP?

Following on @Mark_Bailey's suggestion, I'd look at the Contour Profiler as well.

 

2020-07-30_10-53-50.466.png

 

-Jeff