|
Building explorations with the Plot Builder
|
|
•
|
The PlotBuilder now supports plotting expressions with extra parameters, constructing an interactive plot with slider controls that change the extra parameter values.
|
•
|
The choice of which independent names are plotting variables and which are interactive parameters can be changed.
|
•
|
This functionality supports 2-D and 3-D plots. Multiple expressions can be plotted separately or interpreted together as an appropriate parametric calling sequence.
|
•
|
The choice of plot type and its qualities can be changed by re-entering the PlotBuilder in the right-side panel. In the case of a constructed interactive plot an Edit button allows the side panel to reopen with the corresponding saved plotting options.
|
|
|
Color bars for contour and density plots
|
|
•
|
Plots produced by the plots:-densityplot and plots:-contourplot commands now appear with a color bar by default. You can control whether a color bar is displayed by using the colorbar (or colourbar) option, which is true by default.
|
>
|
plots:-densityplot( tan( x^2 - y^2 ), x = -2*Pi .. 2*Pi, y = -2*Pi .. 2*Pi, 'colormap' = "Magma" );
|
>
|
plots:-contourplot( exp( x ) * cos( y ), x = -1 .. 2*Pi, y = 0 .. Pi, 'coords' = 'spherical', 'filledregions' = true, 'grid' = [100, 100]);
|
>
|
plots:-contourplot( x/(x^2 + y^2 + 1), x = -3 .. 3, y = -3 .. 3, 'filledregions' = true, 'colormap' = "Executive" );
|
•
|
To suppress the display of a color bar, set the colorbar = false option.
|
>
|
plots:-densityplot( sin( x/y ), x = -Pi .. Pi, y = -Pi .. Pi, 'colormap' = "DivergeRainbow", 'colorbar' = false );
|
|
|
More new colormaps for gradient color schemes
|
|
•
|
Fourteen new colormaps are now available in Maple as ColorTools palettes that can easily be used with the colorscheme option for plot commands that accept it.
|
•
|
There is one new linear colormap Cividis which is a more colorblind friendly version of previously added linear color map Viridis.
|
>
|
ColorTools:-Swatches("Cividis", 'mode'=gradient, 'title'="Cividis");
|
>
|
plots:-display( Array([ seq(ColorTools:-Swatches(m, 'mode'='wheel', 'title'=m), m in ["Colorwheel", "Isocircle", "Twilight"])]) );
|
>
|
ColorTools:-Swatches("DivergeRainbow", 'mode'='gradient');
|
>
|
plots:-display(Matrix(2,3,[seq(ColorTools:-Swatches(m, 'mode'='gradient', 'title' = m), m in ["Coolwarm", "DivergeBWY", "DivergeBJY", "DivergeBKR", "DivergeBKY", "DivergeGWV"])]));
|
•
|
Twilight is also a good divergent colormap.
|
>
|
plot([abs(x)*sin(x), abs(x)*cos(x), x = -3*Pi .. 3*Pi], colorscheme = "DivergeRainbow", thickness = 5, title = "Twilight", scaling = constrained);
|
•
|
There are three new rainbow colormaps, Isoluminant, Rainbow, and Turbo all aiming to be visually appealing without the drawbacks of using a HSV color hue spread colormap.
|
>
|
plots:-display( Array([ seq(ColorTools:-Swatches(m, 'mode'='gradient', 'title'=m), m in ["Isoluminant", "Rainbow", "Turbo"])]) );
|
|
|
More plot types are responsive to global color settings
|
|
•
|
These are the new default colors for these plots:
|
>
|
plots:-display( <
DEtools:-DEplot(diff(y(t), t) = 2.0 - 0.1*y(t), y(t), t = 0 .. 20, [y(0) = 10, y(0) = 30, y(0) = 50]) ,
plots:-contourplot( -5*x/(x^2 + y^2 + 1), x=-3..3, y=-3..3, colorbar=false) ;
plots:-contourplot( -5*x/(x^2 + y^2 + 1), x=-3..3, y=-3..3, colorbar=false, filled) ,
plots:-densityplot( -5*x/(x^2 + y^2 + 1), x=-3..3, y=-3..3, colorbar=false)
> );
|
>
|
plots:-setcolors("Dalton"):
|
>
|
plots:-display( <
DEtools:-DEplot(diff(y(t), t) = 2.0 - 0.1*y(t), y(t), t = 0 .. 20, [y(0) = 10, y(0) = 30, y(0) = 50]) ,
plots:-contourplot( -5*x/(x^2 + y^2 + 1), x=-3..3, y=-3..3, colorbar=false) ;
plots:-contourplot( -5*x/(x^2 + y^2 + 1), x=-3..3, y=-3..3, colorbar=false, filled) ,
plots:-densityplot( -5*x/(x^2 + y^2 + 1), x=-3..3, y=-3..3, colorbar=false)
> );
|
|
|
Plotting is faster and uses less memory
|
|
•
|
Plotting in Maple uses a smart, adaptive plotting engine. In Maple 2023, we focused on improving the speed and memory usage of the adaptive plotting engine. See Performance Improvements for Plots for details.
|
|
|
|