The new smartview feature for plots in Maple 16 distinguishes between the plot data and the view of that data. When the user provides a domain for the independent variable, for example, x=-3..3, then the plot data is computed over that domain. (If the user does not provide a domain, then the default domain - typically -10..10 or -2*Pi..2*Pi - is used.) Once the plot data has been collected, if the user has not provided a view, then the smartview algorithm is applied to try to determine a window on that data which is informative and representative.

The first step is to determine a vertical range. For this, various heuristics are applied to reduce the vertical range where the plot data grows so rapidly that details for smaller values are obscured. (In Maple 15, for example, if a plotted function has a vertical asymptote in the plot domain, then the graph not near the singularity will often just be a horizontal line, with essentially no visible information content.) There are controls in place to ensure that the vertical range is not reduced too much.

Once the vertical view has been determined, the horizontal view is reduced so that empty space at the left and right ends of the graphs are eliminated. This results in additional visual enhancement of the details of the graph which are in view.

There are several ways to modify this behaviour.

First, the user can explicitly provide a view:

plot( exp(x), x=-3..3, view=[-3..3, default ] )

will keep the horizontal view as -3..3 while applying the smartview algorithm to the vertical view.

plot( exp(x), x=-3..3, view=0..exp(3) )

will produce essentially the same plot as in Maple 15.

Second, the user can locally turn off the smartview algorithm:

plot( exp(x), x=-3..3, smartview=false )

Third, the user can globally turn off the smartview algorithm:

_Env_Plot_SmartView := false

The only real backwards incompatibility introduced with the smartview algorithm is that the linkage between the plot variable domain and the horizontal view has been severed. The plot data itself has not changed, which means that you can zoom in and out and pan around the plot using mouse controls to see everything that was present in the plots from earlier versions of Maple. The main difference is that the (default) initially presented view is now a lot more visually informative and useful.

Dave Hare

Manager Mathematical Software Development Group

Maplesoft

(who may or may not be smarter than he thinks he is...)