Hi Saji/Takeshi
A few comments:
Mary has added the time axis request to
NCL's review list. A "priority" will be
assigned later.
Mary will likely be the person to implement
this request. However, you should be aware that
she is very busy. NCL has a number of requests
already on the priority list (eg, WRF model processing,
GRIB-2, HDF5, netCDF4, PyNGL [Python NCL],
generalized remapping/interpolation, ...)
[a] Saji: Nobody here uses Grads or Ferret with any
regularity. *At your convenience*, could you
pls generate a few ferret/GrADS examples.
To my knowledge, Grads/Ferret require COARDS
conforming "time" unless other information
is manually provided. Is this not true?
NCL makes no such requirement. The WRf model
produces a time variable that is characters.
Ferret is written for a very specific subset of
users. Ncl is more general.
[b] re: "Most graphical/data analysis software ..."
I have asked people who use Matlab and IDL
about "built in support for time axis labels".
They are not aware of any. Perhaps, someone
built their own library but it is not part
of Matlab or IDL.
[c] "intelligently decide what level of resolution
is optimal". Well, NCL like other graphical software
determines the number of major/minor tick marks.
What if NCL "intelligently" [ :-) ] decides
that the axis should have yyyymmddhh and the user
does not want that.
[d] Takeshi: the "case" statement [also, "else if"]
have been on NCL's priority list. However, it turns
out that they way the core language was designed,
it is not so easy to implement.
The same for a f90 "where" statement.
I do think that there would have to be a function:
res = true
timePlot = create_time_axis (time[*] \
,user_specified_options \
,res )
where "time" has some standardized "units" which
the function recognizes.
D
>Date: Sun, 15 Oct 2006 11:33:34 +0000
>From: Saji Njarackalazhikam Hameed <saji_at_apcc21.net>
>To: Dennis Shea <shea_at_cgd.ucar.edu>
>Cc: eno_at_jamstec.go.jp, haley_at_ucar.edu
>Subject: Re: tickmark labels for month
>MIME-Version: 1.0
>Content-Disposition: inline
>User-Agent: Mutt/1.5.12-2006-07-14
>X-Virus-Scanned: amavisd-new at ucar.edu
>
>Most
graphical/data analysis software (Grads, Ferret etc.) have built in
>support for time axis labels. These may not be sophisticated, but gives
>useful information with minimal effort on the part of the user.
>
>I hope NCL developers will create something basic (nothing fancy). It
>would be good to have time labelled in units people understand readily
>(years and days as numbers and months as strings). Plotting different
>items in minor and major axes may help reduce clutter (for example
>years along major tick marks, months along minor).
>
>Further the plotting program may intelligently decide what level of
>resolution is optimal - for example, if the data is daily resolution
>and there is enough space for days to be marked, mark them - if not,
>mark months and years only). Or this could be decided by the user
>in some way.
>
>
>I am looking forward to hear opinions from other users.
>
>saji
>
>* Dennis Shea <shea_at_cgd.ucar.edu> [2006-10-13 10:32:20 -0600]:
>
>> [snip]
>> >BTW, GMT (http://gmt.soest.hawaii.edu) has some unique and
>> >interesting (but a little cumbersome) ways to let user chose how to
>> >format the time axis (see section 4.4.3.5 of online manual at
>> >
>> >http://gmt.soest.hawaii.edu/gmt/doc/html/GMT_Docs/GMT_Docs.html )
>> [snip]
>>
>>
>> Actually, I am aware of GMT.
>>
>> I looked at some examples. Certainly, NCL can do
>> anything I saw. However, the options provided
>> are only a small subset of the ways time could be
>> plotted. It does seem cryptic/cumbersome.
>>
>> No pun intended, but having automated time labeling
>> can be a a real 'time-sink' for whoever would create
>> the function,
>>
>> should time be required to be numeric? Maybe be
>> be of form "time since ..."? What about yyyymm[[dd]hh]?
>>
>> TIME = create_time_axis (time[*]:numeric, opt)
>>
>> or, could string or character types be allowed?
>> If so, what form should be supported?
>>
>> TIME = create_time_axis (time[*], opt)
>>
>> How should this be passed to, say,
>>
>> plot = gsn_xy(wks, TIME, y, res)
>>
>> I think that TIME would need to have its
>> own set of attributes which gsn_xy/gsn_xy_csm
>> would need to examine to alter the normal behavior.
>>
>> eg: Time_at_special_handling = True
>>
>> if (isatt(x,"special_handling")) the
>> ... do something special ...
>> end if
>>
>> How would TIME be passed for the Hovmueller plot
>> that Takeshi wanted?
>>
>> Maybe someting simple could be created as a starting point.
>> However, the developers might want a design document
>> so they have a target.
>>
>> Ideas welcome!!! :-)
>>
>> D
>
>--
>Saji N. Hameed
>
>APEC Climate Center +82 51 668 7470
>National Pension Corporation Busan Building 12F
>Yeonsan 2-dong, Yeonje-gu, BUSAN 611705 saji_at_apcc21.net
>KOREA
Received on Tue Oct 17 2006 - 16:12:30 MDT
This archive was generated by hypermail 2.2.0 : Sat Oct 21 2006 - 07:59:03 MDT