Subscribe Bookmark RSS Feed

Custom Graph: how to create a nom axis box?

eigenmetricsoli

Community Trekker

Joined:

Jun 26, 2014

Is there a way to have the Graph Box(...) function produce a NomAxisBox instead of a standard AxisBox?  I was trying to create a custom Variability chart that updates with the dt<<Make Rowstate Handler callback rather than the "Automatic Recalc" option for the built-in platforms. 

I could make one myself out of a framebox with lines and text inserted at appropriate positions...but I was looking for something already built-in.

I saw the command to produce a NomAxisBox within a journal file by opening it as a text file, but the NomAxisBox(...) command is not available in the scripting platform for some reason (it gives a name unresolved error).

NomAxisBox(size(300,22),sizeID(1,5),num labels(5),labels(".",group1,group2,group3,group4,),value(1,1,1,1,1),total(5),horizontal,right,dividers(1),lowerFrame(1),insideTicks(1),)

3 REPLIES
danschikore

Staff

Joined:

Sep 21, 2012

Unfortunately NomAxisBox is only used internally and not exposed to JSL.  Boxes in Journals are created through a different mechanism.  We have this recorded as a feature request for future versions of JMP.

aaron_andersen

Joined:

Sep 3, 2014

As Dan said, you can't get a NomAxis box directly from JSL. However, what you can do is create the regular numeric axis with Graph Box, then convert it to a custom categorical axis using the Tick Label List message:

axisbox << Tick Label List(

  {"sqrt2", "sqrt3", "e", "pi"},

  {1.41, 1.73, 2.72, 3.14}

);

The first list can be set to whatever labels you want, and the second (optional) list the corresponding positions.

Will this be helpful for what you want to do?

aaron_andersen

Joined:

Sep 3, 2014

One more note: you'll probably want to set << Inc( 1 ) and an appropriate Min and Max on your axisbox at the same time, since otherwise some of your custom labels will be skipped.