Re: How to display single orbits of satellite data in function graphics? [message #84100] |
Tue, 30 April 2013 13:29  |
Jim Pendleton
Messages: 165 Registered: November 2011
|
Senior Member |
|
|
On Monday, April 29, 2013 5:26:44 PM UTC-6, Paul van Delst wrote:
> Hello,
>
>
>
> The subject line initially read "Function graphics equivalent of PLOTS?"
>
> but I changed it to what I really want to do.
>
>
>
> I have an older direct graphics procedure that plots individual data
>
> points (satellite data) on a map, where the colour of each distinct
>
> field-of-view (FOV) is a function of the measured quantity (say,
>
> radiance or temperature).
>
>
>
> This is achieved by creating the global map, then looping over each
>
> observation and plotting it on the map via PLOTS setting the colour
>
> separately as needed for each plot. Takes about 0.5 seconds to display a
>
> couple of orbits of data.
>
>
>
> Standard sort of stuff IDL is used for, right?
>
>
>
> For grins I thought I'd alter the code to do it using function graphics.
>
> But, how does one do that? There's no equivalent of PLOTS. And besides,
>
> plotting one point at a time in function graphics (when you have more
>
> than a couple hundred points) takes forever (15minutes and counting
>
> right now, for pete's sake).
>
>
>
> To reiterate my question: How would one plot satellite tracks of
>
> individual FOV data on a global map? E.g. a single orbit of polar
>
> orbiter data?
>
>
>
> It used to be a trivial thing to do in direct graphics. And the IDL help
>
> is useless unless you want to register a nice regular image with a map
>
> projection.
>
>
>
> cheers,
>
>
>
> paulv
>
>
>
> p.s. I'm still at IDL v8.2 and I'm getting really really tired of
>
> waiting many minutes for plots to display (that take fractions of a
>
> second in DG). I'm hoping the latest versions of IDL have sped up
>
> function graphics display by at least several orders of magnitude. Is
>
> that the case?
This isn't a direct reply to the thread, but one of my favorite tools in the IDL Workbench for determining performance bottlenecks is the Profiler tool. In IDL 8.2 this can be instantiated through the Window menu.
It may not answer all the questions, but it can be used to direct the questions.
In the case of overplotting a single point at a time, as in this example, the methods _ACCUMULATEXYZRANGE and GETXYZRANGE in the undocumented class _IDLITVISUALIZATION use a lot of execution time. Without even knowing what these methods do, one could guess that each time a point is added, the plot range is calculated new. This might lead one to ask, "Is there a way to set the data range a single time, given that I know my map limits and the range of valid latitudes and longitudes I intend to plot?"
If there isn't a likely answer to such a question in the help for the documented routines, it's a good indicator that Dr. Piper might be interested in hearing your concerns.
|
|
|