MathGroup Archive 2012

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Manipulate[Plot[Evaluate[expr]]]

Other than the extra brackets, there are several other problems with this
presentation. One is that the starting values of the sliders should be
specified separately from the parameter domains to obtain a smooth action of
the sliders. 

The second problem is that there is, or should be, a maxim: A dynamic
presentation always requires a fixed background. This is often violated by
allowing Mathematica to automatically adjust the PlotRange. Then one has a
varying curve against a varying scale and it is not as easy to see how the
parameter affects the shape of the curve. Specifying a fixed PlotRange is
one solution to this problem.

However, in this case there is a rather large overall vertical range for the
function as the parameters are changed. One way to handle this is to provide
an additional slider to independently adjust the vertical PlotRange. So
then, at least, the background is stable while any of the function
parameters are being changed.

 Plot[M/\[Tau] \[Phi]^
    M E^(-(x/\[Tau])) (1 - E^(-(x/\[Tau])))^(M - 1), {x, 0, 50},
  AspectRatio -> 1/2,
  Frame -> False,
  PlotRange -> {{0, 50}, {0, 10^ymax}},
  PlotRangePadding -> {0.2, 10^ymax/10},
  ImagePadding -> {{25, 5}, {15, 5}},
  ImageSize -> {430, 220}],
 {{M, 5.5}, 1, 12, Appearance -> "Labeled"},
 {{\[Tau], 9}, 3, 15, Appearance -> "Labeled"},
 {{\[Phi], .65}, .5, .8, Appearance -> "Labeled"},
 {{ymax, -2.3}, -5, -1}] 

There are other possibilities. One would be to have a button that finds the
maximum value for the function and then snaps the PlotRange to accommodate.
Another solution would be to have two curves and a left and right scale with
one always showing the full y range and the other showing the adjusted
range. Then we would obtain an absolute picture of the function behavior
along with an adjustable magnified version. But these get more into custom
dynamic presentations.

David Park
djmpark at 

From: leigh pascoe [mailto:leigh at] 

Could someone please help me with the syntax of a dynamic plot?

I would like to plot a function with 3 constants, for various values of the
constants (M, t and f say) and for the variable x going from zero to 50. I
have been unable to find the correct syntax for the Manipulate/Plot command.
Here is one attempt that shows the function to be evaluated and the 3

 Plot[M/\[Tau] \[Phi]^M E^(-(x/\[Tau])) (1 - E^(-(x/\[Tau])))^(
   M - 1), {x, 0, 50}], {{M, 1, 12, 1}, {\[Tau], 3, 15,
   1}, {\[Phi], .5, .8, .1}}]

Any suggestions would be appreciated.


  • Prev by Date: Re: calculation error in series
  • Next by Date: Re: Typesetting in Mathematica (TraditionalForm typesetting?)
  • Previous by thread: Re: Manipulate[Plot[Evaluate[expr]]]
  • Next by thread: Re: Manipulate[Plot[Evaluate[expr]]]