|
From: <pl...@pi...> - 2012-05-01 20:15:10
|
On 05/01/12 21:27, Petr Mikulik wrote:
> I think I have found two places where time settings accept string but not
> string variable or string functions:
>
> 1. Here "set timefmt" does not accept string variable:
>
> set xdata time
> set timefmt "[%Y/%m/%d %H:%M:%S]"
> show timefmt
>
> myfmt = "%Y/%m/%d %H:%M:%S"
> set timefmt myfmt
>
> gnuplot> set timefmt myfmt
> ^
> "bug1.gp", line 8: time format string expected
>
>
> 2. "set xrange" accepts string variables but not string functions:
>
Agreed, also noted this short-coming recently wanting to use a variable
to set timefmt, had to use string literals in two places and maintain
each versions of the string.
IMO, allowing variable substitution in this context would be an advantage.
Peter. (with two e's ;) )
> reset
>
> set xdata time
> set timefmt "%Y/%m/%d %H:%M:%S"
>
> set xrange [ "2012/01/20 14:00:00" : "2012/01/20 18:00:00" ]
> show xrange
>
> s1="2012/01/20 14:00:00"; s2="2012/01/20 18:00:00"
> set xrange [ s1 : s2 ]
> show xrange
>
> set xrange [sprintf("2012/01/20 14:00:00") : sprintf("2012/01/20 18:00:00")]
> show xrange
>
> myfmt = "%Y/%m/%d %H:%M:%S"
> x1=strptime(myfmt, "2012/01/20 14:00:00")
> x2=strptime(myfmt, "2012/01/20 18:00:00")
>
> set xrange [ strftime(myfmt, x1) : strftime(myfmt, x2) ]
> show xrange
>
> =>
>
> set xdata time
> set xrange [ "2012/01/20 14:00:00" : "2012/01/20 18:00:00" ]
>
> set xdata time
> set xrange [ "2012/01/20 14:00:00" : "2012/01/20 18:00:00" ]
>
> set xdata time
> set xrange [ "2000/01/01 00:33:32" : "2000/01/01 00:33:32" ]
>
> set xdata time
> set xrange [ "2000/01/01 00:33:32" : "2000/01/01 00:33:32" ]
>
> ... the first two outputs are correct.
>
> ---
> Petr
>
|