Problem with d.3d
Darrell McCauley
mccauley at ecn.purdue.edu
Fri Apr 16 14:06:20 EDT 1993
dabraham at quercus.ecn.uoknor.edu writes on 16 Apr 93:
>with d.3d? I have rasterized a map of a stream network with point
>concentrationsof chlorides along various rivulets of the network. Now
>d.3d generates differentpeaks as a result of the interpolation of the
>concentration values and these
>peaks are generated in a fashion that obscures the streams to a great extent
>causing visualisation problems. Does anyone know of a way whereby single clear
>cut peaks can be obtained with a good view of the stream too for correlation
>purposes?
If I am understanding this right, we have a x-y vector plot (stream
network) with a x-y-z plot of points (concentrations). Would a 3d plot of
chloride concentrations as points or impulses suspended above a plot
of the stream network be what you are looking for?
chloride concentrations could be either points in x-y-z or
lines from the points in x-y-z down to to x-y plane.
the stream network could be plotted in the x-y plane.
if so, I would suggest the grass driver of gnuplot. This would also
make it easier to reproduce the plot as a PostScript or TeX file
for purposes of publication. gnuplot should be available from
sun.soe.clarkson.edu:~ftp/submit/gnuplot3_3b12.tar.Z
cygnus.com:~ftp/incoming/gnuplot3_3b12.tar.Z (cannot see it
but it is there...)
rsm2.physics.uiuc.edu:~ftp/pub/gnuplot/gnuplot3_3b12.tar.Z
I have successfully used the appended awk script to generate
gnuplot input data from a dig_ascii file (though it could
probably use some improvements). An example of the output
can be found via anonymous ftp from pasture.ecn.purdue.edu
in pub/mccauley/grass/gnuplot-examples.ps. This file has
two graphs: (1) a contour plot of "elevation" in spearfish
(2) a plot of the "fields" vector file and "archsites"
sites list in spearfish. The latter is only in two dimensions,
but I probably could have made it like the chloride-streams plot
that I described above.
Hope this helps.
--Darrell
BEGIN { n=-1; segments=0; }
{
if (NR > 14)
{
if ($1 == "A")
{
n=segments=$2;
}
else
{
if ( n != segments )
{
if (n%2 == 1)
{
printf "%s %s\n", prev_b, prev_a;
printf "%s %s\n", $2,$1;
}
else
{
printf "%s %s\n", prev_b, prev_a;
printf "%s %s\n", $2,$1;
}
print "";
}
else
n--;
prev_a=$1;
prev_b=$2;
}
}
}
More information about the grass-user
mailing list