|
From: <and...@us...> - 2008-08-13 12:29:50
|
Revision: 8638
http://plplot.svn.sourceforge.net/plplot/?rev=8638&view=rev
Author: andrewross
Date: 2008-08-13 12:29:59 +0000 (Wed, 13 Aug 2008)
Log Message:
-----------
Update python and perl versions of example 21 consistent with C
version.
Modified Paths:
--------------
trunk/examples/perl/x21.pl
trunk/examples/python/xw21.py
Modified: trunk/examples/perl/x21.pl
===================================================================
--- trunk/examples/perl/x21.pl 2008-08-13 12:04:56 UTC (rev 8637)
+++ trunk/examples/perl/x21.pl 2008-08-13 12:29:59 UTC (rev 8638)
@@ -61,7 +61,7 @@
my $pts = 500;
my $xp = 25;
my $yp = 20;
- my $nl = 15;
+ my $nl = 16;
my $knn_order = 20;
my $threshold = 1.001;
my $wmin = -1e3;
@@ -104,7 +104,7 @@
@opt = (0., 0., 0., 0., 0., 0.);
$xm = $ym = -0.2;
- $xM = $yM = 0.8;
+ $xM = $yM = 0.6;
plParseOpts (\@ARGV, PL_PARSE_PARTIAL);
@@ -123,11 +123,10 @@
my ($xg, $yg) = create_grid ($xp, $yp); # grid the data at
# the output grided data
- my $xlab = "Npts=$pts gridx=$xp gridy=$yp";
plcol0 (1);
plenv ($xm, $xM, $ym, $yM, 2, 0);
plcol0 (15);
- pllab ($xlab, "", "The original data");
+ pllab ("X", "Y", "The original data sampling");
plcol0 (2);
plpoin ($x, $y, 5);
pladv (0);
@@ -138,10 +137,7 @@
pladv (0);
for (my $alg = 1; $alg < 7; $alg++) {
- my $ct = clock ();
$zg = plgriddata ($x, $y, $z, $xg, $yg, $alg, $opt [$alg - 1]);
- $xlab = sprintf ("time=\%d ms", (clock () - $ct) / 1000);
- $ylab = sprintf ("opt=\%.3f", $opt [$alg - 1]);
# - CSA can generate NaNs (only interpolates?!).
# - DTLI and NNI can generate NaNs for points outside the convex hull
@@ -187,19 +183,22 @@
my $lzM = max ($zg);
my $lzm = min ($zg);
+ $lzm = min pdl ([$lzm, $zmin]);
+ $lzM = max pdl ([$lzM, $zmax]);
+
+ $lzm = $lzm - 0.01;
+ $lzM = $lzM + 0.01;
+
plcol0 (1);
pladv ($alg);
if ($k == 0) {
- $lzm = min pdl ([$lzm, $zmin]);
- $lzM = max pdl ([$lzM, $zmax]);
-
$clev = $lzm + ($lzM - $lzm) * sequence ($nl)/ ($nl - 1);
plenv0 ($xm, $xM, $ym, $yM, 2, 0);
plcol0 (15);
- pllab ($xlab, $ylab, $title [$alg - 1]);
+ pllab ("X", "Y", $title [$alg - 1]);
plshades ($zg, $xm, $xM, $ym, $yM,
$clev, 1, 0, 1, 1, 0, 0, 0);
plcol0 (2);
@@ -210,7 +209,7 @@
cmap1_init ();
plvpor (0.0, 1.0, 0.0, 0.9);
- plwind (-1.0, 1.0, -1.0, 1.5);
+ plwind (-1.1, 0.75, -0.65, 1.20);
#
# For the comparition to be fair, all plots should have the
# same z values, but to get the max/min of the data generated
@@ -219,9 +218,9 @@
# plw3d(1., 1., 1., xm, xM, ym, yM, zmin, zmax, 30, -60);
#
- plw3d (1., 1., 1., $xm, $xM, $ym, $yM, $lzm, $lzM, 30, -60);
- plbox3 (0.0, 0, 0.0, 0, 0.0, 4,
- "bnstu", $ylab, "bnstu", $xlab, "bcdmnstuv", "");
+ plw3d (1., 1., 1., $xm, $xM, $ym, $yM, $lzm, $lzM, 30.0, -40.0);
+ plbox3 (0.0, 0, 0.0, 0, 0.5, 0,
+ "bntu", "X", "bntu", "Y", "bcdfntu", "Z");
plcol0 (15);
pllab ("", "", $title [$alg - 1]);
plot3dc ($xg, $yg, $zg, DRAW_LINEXY | MAG_COLOR | BASE_CONT, $clev);
Modified: trunk/examples/python/xw21.py
===================================================================
--- trunk/examples/python/xw21.py 2008-08-13 12:04:56 UTC (rev 8637)
+++ trunk/examples/python/xw21.py 2008-08-13 12:29:59 UTC (rev 8638)
@@ -8,7 +8,7 @@
pts = 500
xp = 25
yp = 20
-nl = 15
+nl = 16
knn_order = 20
threshold = 1.001
wmin = -1e3
@@ -44,16 +44,23 @@
xm = -0.2
ym = -0.2
- xM = 0.8
- yM = 0.8
+ xM = 0.6
+ yM = 0.6
opt[2] = wmin
opt[3] = knn_order
opt[4] = threshold
# Create the sampled data
- xt = random(pts)
- yt = random(pts)
+ # random is an efficient way of generating random numbers in
+ # python, but for consistency across languages we use plrandd
+ #xt = random(pts)
+ #yt = random(pts)
+ xt = zeros(pts)
+ yt = zeros(pts)
+ for i in range(pts) :
+ xt[i] = (xM-xm)*plrandd()
+ yt[i] = (yM-ym)*plrandd()
if randn == 0 :
x = xt + xm
y = yt + ym
@@ -74,11 +81,10 @@
xg = xm + (xM-xm)*arange(xp)/(xp-1.)
yg = ym + (yM-ym)*arange(yp)/(yp-1.)
- xlab = 'Npts='+`pts`+' gridx='+`xp`+' gridy='+`yp`
plcol0(1)
plenv(xm,xM,ym,yM,2,0)
plcol0(15)
- pllab(xlab,'','The original data')
+ pllab('X','Y','The original data sampling')
plcol0(2)
plpoin(x,y,5)
pladv(0)
@@ -88,11 +94,8 @@
for k in range(2):
pladv(0)
for alg in range(1,7):
- ct = time.clock()
zg = reshape(zeros(xp*yp),(xp,yp))
plgriddata(x, y, z, xg, yg, zg, alg, opt[alg-1])
- xlab = 'time='+`int((time.clock()-ct)*1000)`+' ms'
- ylab = 'opt='+`opt[alg-1]`
if alg == GRID_CSA or alg == GRID_DTLI or alg == GRID_NNLI or alg == GRID_NNI:
for i in range(xp):
@@ -118,25 +121,29 @@
lzM = max(zg.flat)
lzm = min(zg.flat)
+ lzm = min(lzm,zmin)
+ lzM = max(lzM,zmax)
+
+ lzm = lzm - 0.01
+ lzM = lzM + 0.01
+
plcol0(1)
pladv(alg)
if (k == 0):
- lzm = min(lzm,zmin)
- lzM = max(lzM,zmax)
clev = lzm + (lzM-lzm)*arange(nl)/(nl-1)
plenv0(xm,xM,ym,yM,2,0)
plcol0(15)
- pllab(xlab,ylab,title[alg-1])
+ pllab('X','Y',title[alg-1])
plshades(zg, xm, xM, ym, yM, clev, 1, 1)
plcol0(2)
else:
clev = lzm + (lzM-lzm)*arange(nl)/(nl-1)
cmap1_init()
plvpor(0.0, 1.0, 0.0, 0.9)
- plwind(-1.0, 1.0, -1.0, 1.5)
- plw3d(1.0, 1.0, 1.0, xm, xM, ym, yM, lzm, lzM, 30, -60)
- plbox3('bnstu', ylab, 0.0, 0,'bnstu', xlab, 0.0, 0,'bcdmnstuv', '', 0.0, 4)
+ plwind(-1.1, 0.75, -0.65, 1.20)
+ plw3d(1.0, 1.0, 1.0, xm, xM, ym, yM, lzm, lzM, 30.0, -40.0)
+ plbox3('bntu', 'X', 0.0, 0,'bntu', 'Y', 0.0, 0,'bcdfntu', 'Z', 0.5, 0)
plcol0(15)
pllab('','',title[alg-1])
plot3dc(xg, yg, zg, DRAW_LINEXY | MAG_COLOR | BASE_CONT, clev)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|