Function: quickplot - fast 2-d curve or point plotting of a list or hfarray

Calling sequence:

quickplot(L,options);

Parameters:

L - a list, hfarray or Matrix of the points to be plotted. In the case of a list, each element is a point (represented as a list with two elements). An hfarray or Matrix should have two indices: the first goes from 1 to the number of points, the second goes from 1 to 2. In the case of a Matrix the datatype should be float[8] and the order should be C_order .

options - most of the usual two-dimensional plot options.

Description:

Examples:

> H:= hfarray(1..3000,1..2,
(i,j)->if j=1 then 0.01*i else sin(.1*i) fi);

> quickplot(H,style=point,symbol=point,axes=box);

> quickplot(H,style=point, symbol=point, axes=box, coords=reverse(polar));

The next example is a bifurcation diagram for the quadratic map , involving plotting 60000 points. The use of evalhf and quickplot makes it possible to produce this in a reasonable time.

> M:= hfarray(1..60000,1..2):
bifdiag:= proc(a,b)
local i,j,r,x;
global M;
for i from 1 to 300 do
r:=a+(b-a)*(i-1)/299;
x:= 0.5;
for j from 1 to 200 do x:= r*x*(1-x) od:
for j from 0 to 199 do
M[i+300*j,1]:= r;
M[i+300*j,2]:= x;
x:= r*x*(1-x)
od;
od;
end:

> evalhf(bifdiag(2.5,4)):

> quickplot(M,style=point,symbol=point);