Messages from Usenet group comp.lang.idl-pvwave, compiled by Paulo Penteado
I am trying to write the annotation on a plot, which explains the meaning of each of the PSYM symbols I used. When writing annotation I like to use normalized coordinates. But, as far as I can tell, the /NORMAL (and /DEVICE) keywords are ignored by OPLOT. For example, IDL> x = indgen(10) & y = indgen(10) IDL> plot, x, y IDL> oplot, [0.5], [0.7], PSYM =4, /NORM and the coordinates (0.5,0.7) are treated like data coordinates despite the /NORM keyword. (As an aside, it would also be nice if OPLOT accepted scalars, so that one wouldn't have to convert the scalars to 1 element vectors.) Of course, I can use the CONVERT_COORD procedure to get the "true" data coordinates IDL> xx = convert_coord( 0.5, 0.7, /NORM, /TO_DATA) IDL> oplot, [xx(0)], [ yy(0) ], PSYM = 4 but this seems like an unnecessary complication. What would be really nice would be if I could write the PSYM characters with XYOUTS, so that I could write my annotation with a single line. I can do this with some of the PSYM characters (e.g. the plus sign PSYM = 1) IDL> xyouts, 0.5, 0.7, '(+) Model 1', /NORM but, for example, the diamond (PSYM=4) cannot be written with XYOUTS. Wayne Landsman landsman@stars.gsfc.nasa.gov