BookmarkSubscribeRSS Feed
wma1125

Community Trekker

Joined:

May 9, 2012

how to delete a graphic script in a plot


I add mouse trap in a plot with <<add graphics script. How do I delete the mouse trap? thanks

1 ACCEPTED SOLUTION

Accepted Solutions
Wendy_Murphrey

Joined:

Jun 23, 2011

Solution

Re: how to delete a graphic script in a plot

Yes, Remove Graphics Script is new for JMP 10.  For prior releases, you can build a user-defined function containing the graphics script, then reinitialize the function and send the Reshow message to the FrameBox to update the screen.  Here is an example:

dt = Open( "$SAMPLE_DATA\Big Class.jmp" );

_dist = Distribution(
     Stack( 1 ),
     Continuous Distribution(
          Column( :height ),
          Quantiles( 0 ),
          Moments( 0 ),
          Horizontal Layout( 1 ),
          Vertical( 0 )
     )
);
_rdist = _dist << Report;
_histframe = _rdist["height"][framebox( 2 )];

curve = Function( {},  // make a function holding the old drawing code
     mu = 62.55;
     sigma = 4.24;
     Y Function( Sqrt( 2 * Pi() ) * Normal Density( (x - mu) / sigma ) * 0.095 + 0, x );
);

_histframe << Add Graphics Script(
     Description( "NormalPDF" ),
     curve() // call the function holding the old code
);

/* how do I remove the graphics script?*/
Wait( 2 );  //For demonstration purposes only

curve = Function( {}, {} );
_histframe << reshow;

Wait( 2 );  //For demonstration purposes only
// put the script back
curve = Function( {},  // make a function holding the old drawing code
     mu = 62.55;
     sigma = 4.24;
     Y Function( Sqrt( 2 * Pi() ) * Normal Density( (x - mu) / sigma ) * 0.095 + 0, x );
);
_histframe << reshow;

I hope that helps!

Wendy
6 REPLIES
ms

Super User

Joined:

Jun 23, 2011

Re: how to delete a graphic script in a plot

You can send << remove graphics script(n) to the approprate displaybox, where n is the order of the script (I think the last added script gets n = 1).

An example:

nw = New Window( "Example",

  exx = 20,

  exy = 50;

  Graph Box( Frame Size( 200, 200 ), Circle( {0, 0}, Sqrt( exx * exx + exy * exy ) ) );

);

fb = nw[Framebox( 1 )];

fb << add graphics script(

  Mousetrap(

  exx = x;

  exy = y;

  )

);

fb << remove graphics script( 1 );

wma1125

Community Trekker

Joined:

May 9, 2012

Re: how to delete a graphic script in a plot

hi MS,

it dosn't work.

ms

Super User

Joined:

Jun 23, 2011

Re: how to delete a graphic script in a plot

The example script works for me in JMP 10 (Mac). But I now tried it in JMP 9.0.3 and it does not work, i.e. the last line has no effect. Seems like the remove graphics script() message is new.

What version do you use?

wma1125

Community Trekker

Joined:

May 9, 2012

Re: how to delete a graphic script in a plot

i'm using JMP9.

Wendy_Murphrey

Joined:

Jun 23, 2011

Solution

Re: how to delete a graphic script in a plot

Yes, Remove Graphics Script is new for JMP 10.  For prior releases, you can build a user-defined function containing the graphics script, then reinitialize the function and send the Reshow message to the FrameBox to update the screen.  Here is an example:

dt = Open( "$SAMPLE_DATA\Big Class.jmp" );

_dist = Distribution(
     Stack( 1 ),
     Continuous Distribution(
          Column( :height ),
          Quantiles( 0 ),
          Moments( 0 ),
          Horizontal Layout( 1 ),
          Vertical( 0 )
     )
);
_rdist = _dist << Report;
_histframe = _rdist["height"][framebox( 2 )];

curve = Function( {},  // make a function holding the old drawing code
     mu = 62.55;
     sigma = 4.24;
     Y Function( Sqrt( 2 * Pi() ) * Normal Density( (x - mu) / sigma ) * 0.095 + 0, x );
);

_histframe << Add Graphics Script(
     Description( "NormalPDF" ),
     curve() // call the function holding the old code
);

/* how do I remove the graphics script?*/
Wait( 2 );  //For demonstration purposes only

curve = Function( {}, {} );
_histframe << reshow;

Wait( 2 );  //For demonstration purposes only
// put the script back
curve = Function( {},  // make a function holding the old drawing code
     mu = 62.55;
     sigma = 4.24;
     Y Function( Sqrt( 2 * Pi() ) * Normal Density( (x - mu) / sigma ) * 0.095 + 0, x );
);
_histframe << reshow;

I hope that helps!

Wendy
wma1125

Community Trekker

Joined:

May 9, 2012

Re: how to delete a graphic script in a plot

it works!. thanks, WK