Plotting an arbitrary function:

public class TestPlot extends Applet {

}

  source.


Plotting a family of curves using a parameterized function:


Plotting the curve that corresponds to the parameter's current value:

In the family of curves, suppose we wish to plot a curve corresponding to the 'current' parameter value, p = -50.0, then

The applet code:

public class TestPlot3 extends Applet {

}

My function data same as above, but with the current curve capability:

class MyData3 extends MyData2 {

}

The output of this applet is:

source.


Placing a SPOT corresponding to current parameter and x-vaules:

In the above applet, say we want to show where the current parameter value (p = -50) and x-value (x=-2.5) is.

the applet code is:

public class TestPlot4 extends TestPlot3 {

}

// The applet output is:

 source


Plotting two distinct functions:

Let us plot the curve, y = 2 x2 -10.0 (same as the first example above), and a family of curves, y = 0.3 x3 + p where p is given in the second example above.

The applet code is:


Profiles of Excess Minority Carrier Concentration and the associated Minority carrier diffusion current.

The minority hole concentration profile in n-type side of the pn junction is given by:

p(x) = pn0 * ( exp(qV/kT) - 1.0 ) * ( sinh(W - x)/sinh(W) ) + pn0 * ( 1.0 - sinh(x)/sinh(W) );

where pn0 is the equil. hole concentration, and W is the thickness of the n-type side.

The applet output is:

 source  

The associated diffusion current is

Jp(x) = - q Dp dp(x)/dx
= A ( exp(qV/kT) - 1.0 ) * cosh(W - x)/sinh(W) + A cosh(x)/sinh(W)
where, A = q * pn0 * Dp / Lp

The applet output is:

 source  


Setting axis scale manually:

Use Axis.setAutoScale(false), Axis.setRangeX(), and Axis.setRangeY();

The applet output is:

 source  


Log Plot:

Use Axis.setXLog(true) and/or Axis.setYLog(true).

An example plot is:

 source  

 source