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