I'm trying to setup my linux laptop as a degugging station for my weewx 
issue. I've copied all relevant files into my homedirectory resembling the 
weewx directory structure. Did the same for /var and the like. I enabled 
python3.11 to be /usr/bin/python. I also installed some python tools not 
commonly available within my linux distribution (e.g. pillow or cheetha). 
Finally my call to wee_reports is working nearly (and creates some files 
within var/www/html/weewx, but no images):

PYTHONPATH=MYROOT/weewx-debug/usr/share/weewx 
MYROOT/weewx-debug/usr/share/weewx/wee_reports --
config etc/weewx/weewx.conf --date 2023-12-10 --time=15:00

But I encounter the error

Traceback (most recent call last):
  File "MYROOT/weewx-debug/usr/share/weewx/weewx/reportengine.py", line 
197, in run
    obj.start()
  File "MYROOT/weewx-debug/usr/share/weewx/weewx/reportengine.py", line 
385, in start
    self.run()
  File "MYROOT/weewx-debug/usr/share/weewx/weewx/imagegenerator.py", line 
42, in run
    self.gen_images(self.gen_ts)
  File "MYROOT/weewx-debug/usr/share/weewx/weewx/imagegenerator.py", line 
114, in gen_images
    image = plot.render()
            ^^^^^^^^^^^^^
  File "MYROOT/weewx-debug/usr/share/weewx/weeplot/genplot.py", line 212, 
in render
    self._renderBottom(draw)
  File "MYROOT/weewx-debug/usr/share/weewx/weeplot/genplot.py", line 404, 
in _renderBottom
    bottom_label_size = draw.textsize(self.bottom_label, 
font=bottom_label_font)
                        
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "MYROOT/weewx-debug/usr/share/weewx/weeplot/genplot.py", line 646, 
in textsize
    return ImageDraw.ImageDraw.textsize(self, string, **options)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: type object 'ImageDraw' has no attribute 'textsize'
Generating for requested time 2023-12-31 15:00:00 CET (1704031200)
Using configuration file etc/weewx/weewx.conf

I modified WEEWXROOT to point onto MYROOT.

I admit my current approach is a little bit unconventionally, but I seem to 
be near to a working debugging environment.

Any hint w.r.t. the above python error?


Regards, Michael

Michael Waldor schrieb am Dienstag, 2. Januar 2024 um 07:47:44 UTC+1:

> Thanks for your intrest in my problem. I do have two major changes within 
> section [imagegenerator]. I've increased the image_width from 500 to 600. 
> And I've added a second line within some images to include forcast data 
> from a different database like e.g.
>         [[[daybarometer]]]
>             [[[[barometer]]]]
>             [[[[forecast_barometer]]]]
>                 data_type = barometer
>                 data_binding = dwd_binding
> label = ' '
> color = blue
> And to draw that forecast data I use my new option "time_offset = 36000  # 
> 10 hours". It's intention is to use the additional 100pixel to be filled by 
> forecast.
> See my full skin.conf appended here.
>
> Regards, Michael
>
>
> gjr80 schrieb am Montag, 1. Januar 2024 um 21:46:42 UTC+1:
>
>> Thank you, so that is the code, just need the plot definition. In fact, 
>> the entire [ImageGenerator] stanza from the config file in use would be 
>> best.
>>
>> Gary
>>
>> On Monday 1 January 2024 at 23:19:52 UTC+10 [email protected] wrote:
>>
>>> My code is available as a (rejected) pull request 
>>> https://github.com/weewx/weewx/pull/906 - but the code itself works 
>>> fine. It enhances the timescale some days into the future to plot forecast 
>>> data. See my first post for a sample (only forecast data is plotted, 
>>> measurement data are missing). I assume that my change has a sideeffect 
>>> when weewx checks if there is data to be drawn. But I have no idea why my 
>>> problem only arise for the measurement data. From the sample you clearly 
>>> see that the forecast data contains data from 2023 and 2024, and is 
>>> plotted. The measuretdata of course only contains data from the past. And 
>>> even images where no forecast data is to be plotted (e. g dayUV) are 
>>> missing completely, as soon as the timescale has parts in 2024 and current 
>>> time is 2023.
>>>
>>> And the problem is difficult to reproduce - as soon as the measurement 
>>> data has reached 2024, even images generated for old times are fine. 
>>>
>>> gjr80 schrieb am Montag, 1. Januar 2024 um 11:19:42 UTC+1:
>>>
>>>> I suspect you will not get too much feedback of value until you post 
>>>> the exact code you are using along with the plot definition from 
>>>> skin.conf. 
>>>> The post you linked is very general in nature and it's not clear if the 
>>>> code you are using is that same as the PRs you submitted or otherwise. I 
>>>> am 
>>>> happy to have a look through your code but I don't want to be chasing my 
>>>> tail or going down the wrong path.
>>>>
>>>> Gary
>>>> On Monday 1 January 2024 at 18:10:10 UTC+10 [email protected] 
>>>> wrote:
>>>>
>>>>> As expected all images are fine as soon as current time has reached 
>>>>> the new year 2024. To be more precise - it has to be 5 min past midnight 
>>>>> before the images are fine.
>>>>>
>>>>> I've  tried to understand the logic within imagegenerator.py near its 
>>>>> call of scaletime. Since the x-axis is labelled fine & day/night 
>>>>> rendering 
>>>>> works I assume that x_domain is calculated correctly. 
>>>>> There is a loop over all line_name - it might miss the entry for 
>>>>> measured data. Here I should debug, but:
>>>>>
>>>>> I've tried to reproduce my problems using e.g.
>>>>>
>>>>> sudo wee_reports --date=2023-12-31 --time=22:00
>>>>>
>>>>> Now it is generated perfectly as expected. Of course I do no longer 
>>>>> have the same input data - the measurement data now is available for 
>>>>> times 
>>>>> within 2024, and the forecast data is more recent. Thus it's more 
>>>>> difficult 
>>>>> to reproduce the problem - I've to use older weewx.sdb (luckily I do have 
>>>>> a 
>>>>> recent backup)....
>>>>>
>>>>> BTW Happy new year, Michael
>>>>>
>>>>> Michael Waldor schrieb am Sonntag, 31. Dezember 2023 um 20:05:58 UTC+1:
>>>>>
>>>>>> I would agree, but why is the forecast data drawn fine and only the 
>>>>>> measured data not? My change to scaletime only calculates the time range 
>>>>>> - 
>>>>>> and that looks fine to me (see the included image within my first post). 
>>>>>> scaletime does return a triple of data - start, stop, and stepwidth. 
>>>>>> Works 
>>>>>> fine for forecast. AND works fine if there is no change of the year. I 
>>>>>> assume furthermore that scaletime does not use any global variables. But 
>>>>>> your program is very clean designed, thus I do not expect, that 
>>>>>> scaletime 
>>>>>> could create sideeffects. Tomorrow I'll know more... 
>>>>>>
>>>>>> Tom Keffer schrieb am Sonntag, 31. Dezember 2023 um 16:40:55 UTC+1:
>>>>>>
>>>>>>> Your modified version of scaletime() is surely causing the problem. 
>>>>>>> Its semantics were never clear to me, and now it appears we're 
>>>>>>> discovering 
>>>>>>> the side effects. 
>>>>>>>
>>>>>>> If you have a debugger, use it to step through running wee_reports. 
>>>>>>> It will probably become evident what the problem is.
>>>>>>>
>>>>>>> On Sun, Dec 31, 2023 at 7:17 AM 'Michael Waldor' via weewx-user <
>>>>>>> [email protected]> wrote:
>>>>>>>
>>>>>>>> And since now I encounter the same problem with my day images. And 
>>>>>>>> the timescale is extended into the first hours of next year. Thus I'm 
>>>>>>>> quite 
>>>>>>>> confident that my problems will disappear as soon as the next year 
>>>>>>>> starts. 
>>>>>>>>
>>>>>>>> To me it looks as if the access to weewx.sdb searches at a wrong 
>>>>>>>> time. Sadly I can't look deeper to debug that. There are no error 
>>>>>>>> messages 
>>>>>>>> within journalctl.
>>>>>>>>
>>>>>>>> I'm using two sqlite DBs - the original weewx.sdb of course and a 
>>>>>>>> second one with forecast data. Maybe if the border of a year is 
>>>>>>>> crossed the 
>>>>>>>> weewx.sdb becomes unavailable? I can even report the time - it happens 
>>>>>>>> exactly at 14:00. Afterwards the timeaxis starts to go  till 3 o'clock 
>>>>>>>> in 
>>>>>>>> the night (till 14:00 it goes till midnight). And only forecast data 
>>>>>>>> is 
>>>>>>>> drawn (but containing data from today and tomorrow - no problem with 
>>>>>>>> year 
>>>>>>>> boundary). Even dayUV is no longer updated despite not using forecast 
>>>>>>>> data 
>>>>>>>> at all (but with the same timeaxis crossing the year boundary). 
>>>>>>>>
>>>>>>>> Michael Waldor schrieb am Samstag, 30. Dezember 2023 um 10:20:05 
>>>>>>>> UTC+1:
>>>>>>>>
>>>>>>>>> Since (today?) all week images contain no measured data, only the 
>>>>>>>>> forecast data are visible.
>>>>>>>>> [image: weektempdew.png]
>>>>>>>>> I have to admit that I've patched utilities.py to shift the right 
>>>>>>>>> border of the timescale into the "future". It works fine all over the 
>>>>>>>>> year. 
>>>>>>>>> To my surprise all (measured) data is missing. If I drop my shift the 
>>>>>>>>> data 
>>>>>>>>> re-appears. But - as you see from the image above - the timescale 
>>>>>>>>> looks 
>>>>>>>>> fine and is exactly as intended. I've even debugged my modification 
>>>>>>>>> for the 
>>>>>>>>> current date, and everythind works as intended. But why are there no 
>>>>>>>>> data 
>>>>>>>>> from the past? Even from the above image one can see that 
>>>>>>>>> imagegenerator.py 
>>>>>>>>> can cross the year boundary perfectly.
>>>>>>>>>
>>>>>>>>> And there IS data available within the past (I've checked this by 
>>>>>>>>> dropping my change, and I've got a plot between 23. and 31.).
>>>>>>>>>
>>>>>>>>> Why does weewx don't see the missing data? Images without forecast 
>>>>>>>>> data aren't generated at all, e.g. weekUV.
>>>>>>>>>
>>>>>>>>> For more details on my patch see 
>>>>>>>>> https://groups.google.com/g/weewx-user/c/76qdbSy3bbQ/m/oIlk3sKrBgAJ
>>>>>>>>>
>>>>>>>>> Regards, Michael
>>>>>>>>>
>>>>>>>>> -- 
>>>>>>>> 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].
>>>>>>>> To view this discussion on the web visit 
>>>>>>>> https://groups.google.com/d/msgid/weewx-user/b4d802ee-c929-4ebb-aee9-e52c040a24c0n%40googlegroups.com
>>>>>>>>  
>>>>>>>> <https://groups.google.com/d/msgid/weewx-user/b4d802ee-c929-4ebb-aee9-e52c040a24c0n%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>>>>> .
>>>>>>>>
>>>>>>>

-- 
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].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/weewx-user/1b52f251-8521-4dd7-ab40-78f4002f21b5n%40googlegroups.com.

Reply via email to