Re: Contouring data over maps [message #12444 is a reply to message #12433] |
Wed, 05 August 1998 00:00   |
rjh55
Messages: 5 Registered: April 1997
|
Junior Member |
|
|
Just a thought, and maybe completely wrong, but ...
At the coastline, water depth is zero. The coastline location
is known, so you have additional data points = 0
This would (hopefuly) create a 0 contour line = coastline, when
contour is run.
The result would produce the required contour map with
respect to the coastline.
I would appreciate any comments on this.
Many thanks
Richard
In article <35C7589E.C37A0F1C@rex.cs.tulane.edu>, Jason Hasenbuhler <hasenbuh@rex.cs.tulane.edu> writes:
|> Hmmm. Not good news.
|>
|> The reason my boss wants me to make the
|> contouring respect the land/sea boundries is because
|> he has a very small sample size over a large area
|> that is relatively near to the coast. From that data
|> we are trying to build a picture of the water
|> structure over the total area. If the extrapolation
|> algorithms are using the space that the land is
|> occupying, then the picture comes out wrong.
|> I'm not particularly worried about the actual
|> overwriting of the drawn continents, just what that
|> overwriting implies - that the extrapolation
|> algorithim is only considering the "straight-line"
|> distance between my two data points, and not
|> considering that a huge hunk of rock may intersect
|> that line and make the extrapolations invalid.
|>
|> Here's a worst case, maybe it can explain my problem:
|>
|> ..\####/..
|> ...\##/...
|> ....\/....
|> ..*.||.*..
|> ..../\....
|> .../##\...
|>
|> My data points are at the asterisks. With the
|> current method the data that is extrapolated from my
|> data by IDL will be heavily influenced by BOTH data
|> points, where, if I could find some way to respect the
|> coastlines, I would expect IDL to consider these points
|> much farther away than their cartesian distance.
|>
|> ARGH.
|>
|> I have no idea how to approach this. My original
|> solution was to have my boss get back in the boat and
|> sample a few thousand more sites, but he said no. Any
|> other suggestions?
|>
|> Thanks lots,
|>
|> Jason Hasenbuhler
|> hasenbuh@rex.cs.tulane.edu
|>
|>
|> BTW: please ignore the email address this message is attached to. I have to
|> use someone else's acccount because mine isn't set up yet. Thanks.
|>
|>
|> William Connolley wrote:
|>
|> > 102ff455a31f815f989824@news.frii.com, davidf@dfanning.com (David Fanning) writes:
|> > >Jason Hasenbuhler (hasenbuh@rex.cs.tulane.edu) writes:
|> > >
|> > >> What I need to know is how to make IDL respect the land/sea continental
|> > >> boundries when I plot my interpolated data.
|> > >
|> > >There is, I feel safe in saying, no easy way to do what you want to do.
|> >
|> > I think Davids right. I have found in the past that attempting to define "nodata"
|> > regions with contour causes problems at the edges of those regions. It has been
|> > easier to contour everywhere, and then polyfill in white/background everywhere
|> > else (and then redraw the coastline, probably, because bits of it will have
|> > been clipped).
|> >
|> > Unfortunately, map_continents does not appear to have an option to fill the sea
|> > regions. I'd do it by using a GCM land-sea mask but you probably don't have that.
|> > If you're drawing to the screen, then:
|> >
|> > set your map projection
|> > map_continents,/fil
|> > mask=tvrd()
|> > contour your data
|> > img=tvrd()
|> > img(where(mask eq !p.background))=!p.background
|> > tv,img
|> >
|> > ought to work. Some variant might work with postscript, too.
|> >
|> > ---
|> > William M Connolley | wmc@bas.ac.uk | http://www.nbs.ac.uk/public/icd/wmc/
|> > Climate Modeller, British Antarctic Survey | Disclaimer: I speak for myself
|>
|>
|>
|
|
|