comp.lang.idl-pvwave archive - RDF feed
type: channel
description: Messages from Usenet group comp.lang.idl-pvwave, compiled by Paulo Penteado
items: Re: help: !p.multi switched off?

Re: help: !p.multi switched off?
type: item
description: Hermann Mannstein <H.Mannstein@dlr.de> writes: > is there any hint how I might have switched off the functionality of > !p.multi? I have a quite long display and plotting routine calling > several routines like tvim or skewt, which works > well if called first in an IDL session. If I call this routine a second > time, the setting of the !p.multi parameter ( I use !p.multi=[0,2,2]) > does not change the size of the plot and its position. So the plots > and images are plotted one over the other, while !p.multi is behaving > well. > This happens both on a 'x' - device and on a postscript plot. If I understand this question correctly, it sounds to me like one of your display or plotting routines is explicitly setting a system variable like !P.POSITION. This will confuse your poor !P.MULTI settings. This is most likely caused by careless programming. I see a lot of programs that willy-nilly set system variables. The proper programming technique for any program that uses system variables would be to discover what the system variable is set to before a program operation, set the system variable and perform the operation, then reset the system variable. Something like this: thisPosition = !P.POSITION !P.POSITION = myposition PLOT, mydata !P.POSITION = thisPosition Many programs that use !P.MULTI forget to set it back to a single plot before exiting, which causes all kinds of havoc in subsequent plots. You can reset !P.MULTI (and, in fact, many other system variables) to its default setting by setting it equal to 0: !P.MULTI = 0 If you don't have access to or can't discover the problem in your display or plotting routines, you can also make sure you are setting !P.MULTI between your graphics calls. For example, to draw the top-right corner plot in a 2-by-2 plot setting, you can do this: !P.MULTI = [2, 2, 2, 0, 1] PLOT, data You can do this, of course, whether or not you have already plotted the first two plots in the sequence. Yours, David -- David Fanning, Ph.D. Phone: 970-…
creator: davidf
date: 1996-10-08T07:00:00-00:00