comp.lang.idl-pvwave archive
Messages from Usenet group comp.lang.idl-pvwave, compiled by Paulo Penteado

Home » Public Forums » archive » Re: the sky is falling down again
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Return to the default flat view Create a new topic Submit Reply
Re: the sky is falling down again [message #52357 is a reply to message #52355] Wed, 31 January 2007 05:35 Go to previous messageGo to previous message
R.Bauer is currently offline  R.Bauer
Messages: 1424
Registered: November 1998
Senior Member
JD Smith wrote:
> On Tue, 30 Jan 2007 16:01:31 +0100, Paolo Grigis wrote:
>
>
>>
>> Reimar Bauer wrote:
>>
>>> Hi all
>>>
>>> here is another example which is very funny if you see it the first time
>>>
>>> a=indgen(10)*1D-7
>>> b=a
>>> plot,a,b,psym=1
>>> oplot,[0,10],[0,10]
>>>
>>> because the coordination system is defined by plot it could be a bug too
>>> and not only a question about precisions
>>>
>>>
>>> Any idea what is happen here?
>>
>> I think that maybe plot tries to find out the pixel coordinates
>> corresponding to the far end of the line. If it uses long, signed
>> integers for that, then it will overflow around pixel 2^31, which
>> seems roughly where the line is supposed to be with your settings
>> (which should be something like 500 pixel times 10 divided by 1d-6).
>
>
> In fact this has to be the right explanation. If instead of a wide
> window, you create a tall one:
>
> window,xsize=600,YSIZE=800
>
> Then the line falls below the points. And if you make an exactly square
> plotting window:
>
> window,xsize=800,ysize=800
> a=indgen(10)*1D-7
> b=a
> plot,a,b, psym=1,xstyle=3,ystyle=3,POSITION=[.1,.1,.9,.9],/NORMAL
> oplot,[0,10],[0,10]
>
> Then it all lines up well. The direction with the largest pixel count per
> unit data value ends up "truncating" first: i.e. the longer dimension of
> the plotting window. You can see where it truncates by gradually altering
> the values until the line just starts deviating:
>
> for k=2.,5.,.1 do begin & print,k & oplot,[0,k],[0,k] & wait,1 & endfor
>
> At some point, both clip, and you get a min and max angle (the size of
> which is related to the aspect angle of your plotting window). The first
> deviation for me was near k=2.3. What's close to that number?
>
> IDL> print,!X.CRANGE[0]+((!X.CRANGE[1]-!X.CRANGE[0])/ $
> ((!X.WINDOW[1]-!X.WINDOW[0])*!D.X_SIZE)) * 2.^31
> 2.2700673
>
> Aha. This is precisely the data coordinate where the implied device
> pixel coordinate with this plotting range hits 2.^31, the limit for a
> signed long integer. At that point, it clips to this value, while the
> Y-axis, not having clipped yet, continues to move up, until it too
> clips. Your number may differ depending on your window size.
>
> JD
>

Thanks

So may be there should be L64 used instead.

cheers
Reimar


--
Reimar Bauer

Institut fuer Stratosphaerische Chemie (ICG-1)
Forschungszentrum Juelich
email: R.Bauer@fz-juelich.de
------------------------------------------------------------ -------
a IDL library at ForschungsZentrum Juelich
http://www.fz-juelich.de/icg/icg-i/idl_icglib/idl_lib_intro. html
============================================================ =======
[Message index]
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: Removing fields from a structure
Next Topic: the sky is falling down again

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Fri Oct 10 10:21:00 PDT 2025

Total time taken to generate the page: 0.47954 seconds