So not being a coder or someone that know how to code....
How do you add it to this where the question mark are?

        *if* record.get(*'rainRate'*) *is* *not* None:

           * # Rainfall (in hundredths of an inch) in the last hour*

            data.append(*'r%03.f'* % (record[*'rainRate'*] * 100))


#       *if* record.get(*'?????'*) *is* *not* None:

#          * # Rainfall (in hundredths of an inch) last 24hrs*

#            data.append(*'p%03.f'* % (record[*'?????'*] * 100))


        *if* record.get(*'rain'*) *is* *not* None:

           * # Rainfall (in hundredths of an inch) since midnight*

            data.append(*'P%03.f'* % (record[*'rain'*] * 100))


Thanks for your help andrew!



On Thursday, May 17, 2018 at 9:50:38 PM UTC-4, Andrew Milner wrote:
>
> you could just use span with a day delta:
>
> eg
> $span($day_delta=1).rain.sum for the rain total for previous 24 hours 
> according to the customisation guide
> or
> $span($day_delta=1).outTemp.avg for the average temperature during 
> previous 24 hours
>
>
>
> On Friday, 18 May 2018 01:09:48 UTC+3, Lorin Tremblay wrote:
>>
>> Hi!
>>
>> Trying to modify the xstats to add the last 24hrs to stats.
>>
>> here is the modification that I have made, but obviously not being a 
>> coder there is one or more mistake, can anyone help me sort it out?
>>
>> "*#*
>>
>> *#    Copyright (c) 2009-2015 Tom Keffer *
>>
>> *#*
>>
>> *#    See the file LICENSE.txt for your full rights.*
>>
>> *#*
>>
>> *"""Extended stats based on the xsearch example*
>>
>>
>> *This search list extension offers extra tags:*
>>
>>
>> *  'alltime':    All time statistics.*
>>
>>
>> *  '24_hrs':  Statistics for the last 24 hours.* 
>>
>>
>> *  'seven_day':  Statistics for the last seven days.* 
>>
>>
>> *  'thirty_day': Statistics for the last thirty days.*
>>
>>
>> *You can then use tags such as $alltime.outTemp.max for the all-time max*
>>
>> *temperature, or $seven_day.rain.sum for the total rainfall in the last 
>> seven*
>>
>> *days, or $thirty_day.wind.max for maximum wind speed in the past thirty 
>> days.*
>>
>> *"""*
>>
>> *import* datetime
>>
>> *import* time
>>
>>
>> *from* weewx.cheetahgenerator *import* SearchList
>>
>> *from* weewx.tags *import* TimespanBinder
>>
>> *from* weeutil.weeutil *import* TimeSpan
>>
>>
>> *class* ExtendedStatistics(SearchList):
>>
>>     
>>
>>     *def** __init__*(self, generator):
>>
>>         SearchList.__init__(self, generator)
>>
>>   
>>
>>     *def** get_extension_list*(self, timespan, db_lookup):
>>
>>         *"""Returns a search list extension with additions.*
>>
>>
>> *        timespan: An instance of weeutil.weeutil.TimeSpan. This holds*
>>
>> *                  the start and stop times of the domain of valid times.*
>>
>>
>> *        db_lookup: Function that returns a database manager given a*
>>
>> *                   data binding.*
>>
>> *        """*
>>
>>
>>        * # First, create a TimespanBinder object for all time. This one 
>> is easy*
>>
>>        * # because the object timespan already holds all valid times to 
>> be*
>>
>>        * # used in the report.*
>>
>>         all_stats = TimespanBinder(timespan,
>>
>>                                    db_lookup,
>>
>>                                    context=*'alltime'*,
>>
>>                                    formatter=self.generator.formatter,
>>
>>                                    converter=self.generator.converter)
>>
>>         
>>
>>        * # Now use a similar process to get statistics for the last 24 
>> hours.*
>>
>>         hour_dt = datetime.date.fromtimestamp(timespan.stop) - 
>> datetime.timedelta(hour=24)
>>
>>         hour_ts = time.mktime(hour_dt.timetuple())
>>
>>         24_hours_stats = TimespanBinder(TimeSpan(hour_ts, timespan.stop),
>>
>>                                           db_lookup,
>>
>>                                           context=*'24_hrs'*,
>>
>>                                           
>> formatter=self.generator.formatter,
>>
>>                                           
>> converter=self.generator.converter)
>>
>>
>>        * # Now create a TimespanBinder for the last seven days. This one 
>> we*
>>
>>        * # will have to calculate. First, calculate the time at 
>> midnight, seven*
>>
>>        * # days ago. The variable week_dt will be an instance of 
>> datetime.date.*
>>
>>         week_dt = datetime.date.fromtimestamp(timespan.stop) - 
>> datetime.timedelta(weeks=1)
>>
>>         week_ts = time.mktime(week_dt.timetuple())
>>
>>         seven_day_stats = TimespanBinder(TimeSpan(week_ts, timespan.stop),
>>
>>                                          db_lookup,
>>
>>                                          context=*'seven_day'*,
>>
>>                                          
>> formatter=self.generator.formatter,
>>
>>                                          
>> converter=self.generator.converter)
>>
>>
>>        * # Now use a similar process to get statistics for the last 30 
>> days.*
>>
>>         days_dt = datetime.date.fromtimestamp(timespan.stop) - 
>> datetime.timedelta(days=30)
>>
>>         days_ts = time.mktime(days_dt.timetuple())
>>
>>         thirty_day_stats = TimespanBinder(TimeSpan(days_ts, 
>> timespan.stop),
>>
>>                                           db_lookup,
>>
>>                                           context=*'thirty_day'*,
>>
>>                                           
>> formatter=self.generator.formatter,
>>
>>                                           
>> converter=self.generator.converter)
>>
>>
>>         *return* [{*'alltime'*: all_stats,
>>
>>                  *'24_hrs'*: 24_hours_stats,
>>
>>                  *'seven_day'*: seven_day_stats,
>>
>>                  *'thirty_day'*: thirty_day_stats}]
>>
>>
>> *# For backwards compatibility:*
>>
>> ExtStats = ExtendedStatistics
>> "
>>
>>

-- 
You received this message because you are subscribed to the Google Groups 
"weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to