Bug fix: Two-dimensional plots with coords

Many of the two-dimensional plotting commands (other than plot itself) that are supposed to work with the coords option do not work in Release 5. This is because of bugs in changecoords in the plots package.

> with(plots):

One of the bugs causes the following three commands to produce blank plots. This bug (among others) has been fixed in patchlevel 1 (for Windows). The EC1 patch is available from Maple (http://www.maplesoft.com/patches.html). Recently-purchased copies of Maple may already have the patch installed.

> changecoords(plot(x,x=0..10),polar);

> pointplot([seq([1,Pi/10*i],i=0..19)],style=line,coords=polar);

> implicitplot(x=y,x=0..1,y=0..1,coords=logcosh);

There are still some bugs, even in patchlevel 1: contourplot does not work with coords, and plot fails with a coordinate system having parameters specified in functional style:

> contourplot(x-y, x=0..1,y=0..1,coords=polar);

Error, (in plot/iplot2d) cannot convert to coordinate system, polar

> plot(1, x=0..1, coords=logcosh(2));

Error, (in plot/adaptive) unknown optional argument, coords = logcosh(2)

To remedy these bugs, I have written a replacement for changecoords for two-dimensional coordinate systems, called changecoords2d . This function is part of the Maple Advisor Database library, and must be loaded before use by the command readlib(changecoords2d); . Then instead of making a plot with the coords option, you first produce the plot without the coords option and then call changecoords2d with the plot as first argument and the name of the coordinate system as second argument. Note that all other options (e.g. scaling , colour or axes ) should be part of the first plotting command, not the changecoords2d .

> readlib(changecoords2d);

> changecoords2d(plot(x,x=0..10,scaling=constrained),polar);

[Maple Plot]

> changecoords2d(pointplot([seq([1,Pi/10*i],i=0..19)],style=line,colour=blue),polar);

[Maple Plot]

> changecoords2d(implicitplot(x=y,x=0..1,y=0..1),logcosh);

[Maple Plot]

> changecoords2d(contourplot(x-y, x=0..1, y=0..1, axes=box), logcosh);

[Maple Plot]

> changecoords2d(plot(1, x=0..1), logcosh(2));

[Maple Plot]

See also: addcoords , changecoords , changecoords2d , coords , patchlevel 1 , plot(coords) , transform

Maple Advisor Database, R. Israel 1998