Thank you very much! You are right! Setting the "show_daynight" in skin.conf to False resolves the problem. I did not touch skin.conf before and used the version as it is delivered in weewx-4.10.2.tar.gz.
When I turn "show_daynight" on again and add your additional print messages (and keep the ones I had already added before) I get the following: In _renderDayNight(), self.yscale = (0.0, 5.0, 0.5) latitude=48.14, longitude=11.57 first=night, transitions=[1680497278, 1680543969] Draw rectangle failed: ((1680462000, 0.0), (1680497278, 5.0)) [(44.90740740764886, 144.5), (202.42440329305828, 24.5)] self.xscale: 0.004465020576131688, self.xoffset: -7503253, self.yscale: -24.0, self.yoffset: 144 Draw rectangle failed: ((1680497278, 0.0), (1680543969, 5.0)) [(202.42440329305828, 144.5), (410.9006790127605, 24.5)] self.xscale: 0.004465020576131688, self.xoffset: -7503253, self.yscale: -24.0, self.yoffset: 144 Does this tell you anything? What can I do to resolve this problem (without switching this feature off)? As a side remark: in my installation of "WeeWX: Installation using setup.py" I use the native GW1000 driver. Only in the docker image I left everything as it was and continue to use the interceptor driver. Thank you very much! c s (224) schrieb am Montag, 3. April 2023 um 13:18:39 UTC+2: > Hello, > > I have just installed weewx as described here: > https://weisser-zwerg.dev/posts/ecowitt-gw2000-weewx-docker > > And I run into an error that prevents the images from being drawn: > > weewx-weewx-1 | Apr 3 13:11:03 weewx[20] ERROR weewx.reportengine: > **** Generator terminated > weewx-weewx-1 | Traceback (most recent call last): > weewx-weewx-1 | File "/home/weewx/bin/weewx/reportengine.py", line > 197, in run > weewx-weewx-1 | obj.start() > weewx-weewx-1 | File "/home/weewx/bin/weewx/reportengine.py", line > 385, in start > weewx-weewx-1 | self.run() > weewx-weewx-1 | File "/home/weewx/bin/weewx/imagegenerator.py", > line 42, in run > weewx-weewx-1 | self.gen_images(self.gen_ts) > weewx-weewx-1 | File "/home/weewx/bin/weewx/imagegenerator.py", > line 114, in gen_images > weewx-weewx-1 | image = plot.render() > weewx-weewx-1 | ^^^^^^^^^^^^^ > weewx-weewx-1 | File "/home/weewx/bin/weeplot/genplot.py", line > 222, in render > weewx-weewx-1 | self._renderDayNight(sdraw) > weewx-weewx-1 | File "/home/weewx/bin/weeplot/genplot.py", line > 266, in _renderDayNight > weewx-weewx-1 | sdraw.rectangle(((xleft,self.yscale[0]), > weewx-weewx-1 | File "/home/weewx/bin/weeplot/utilities.py", line > 442, in rectangle > weewx-weewx-1 | self.draw.rectangle(box_scaled, **options) > weewx-weewx-1 | File > "/opt/venv/lib/python3.11/site-packages/PIL/ImageDraw.py", line 294, in > rectangle > weewx-weewx-1 | self.draw.draw_rectangle(xy, fill, 1) > weewx-weewx-1 | ValueError: y1 must be greater than or equal to y0 > > I have followed the complete set-up process as described in "WeeWX: > Installation using setup.py", except that I do use a conda environment and > pip packages rather than the OS packages: > > > mamba create -n weewx python=3.9 > > conda activate weewx > > pip3 install configobj paho-mqtt pyserial pyusb Cheetah3 Pillow ephem > > wget https://weewx.com/downloads/weewx-4.10.2.tar.gz > > tar -xzvf weewx-4.10.2.tar.gz > > cd weewx-4.10.2 > > python3 ./setup.py build > > python3 ./setup.py install > > # create the weewx.conf.patch from here: > https://weisser-zwerg.dev/posts/ecowitt-gw2000-weewx-docker/ > > patch -p1 weewx.conf < weewx.conf.patch > > wget -O weewx-mqtt.zip > https://github.com/matthewwall/weewx-mqtt/archive/master.zip > > ./bin/wee_extension --install ./weewx-mqtt.zip > > wget -O weewx-interceptor.zip > https://github.com/matthewwall/weewx-interceptor/archive/master.zip > > ./bin/wee_extension --install ./weewx-interceptor.zip > > # ------------------- > > ./bin/weewxd > > I still run into the exact same problem. I've tried several modifications > to the config file, but cannot figure out what causes this problem. I've > also added some print statement to tell me more about the issue around the > drawing of the rectangle: > def rectangle(self, box, **options): > """Draw a scaled rectangle. > box: A pair of 2-way tuples, containing coordinates of opposing corners > of the box. > options: passed on to draw.rectangle. Usually contains 'fill' (the color) > """ > box_scaled = [(coord[0] * self.xscale + self.xoffset + 0.5, > coord[1] * self.yscale + self.yoffset + 0.5) for coord in box] > try: > self.draw.rectangle(box_scaled, **options) > print("Draw rectangle succeeded.") > except: > print("Draw rectangle failed:") > print(box) > print(box_scaled) > print(f"self.xscale: {self.xscale}, self.xoffset: {self.xoffset}, > self.yscale: {self.yscale}, self.yoffset: {self.yoffset}\n") > pass > > And I get results as follows: > # ((1680429600, 1029.6000000000001), (1680457455, 1030.1000000000001)) > # [(44.01851851865649, 144.4999999999709), (216.61388888955116, > 24.499999999970896)] > # self.xscale: 0.004465020576131688, self.xoffset: -7503109, self.yscale: > -240.0, self.yoffset: 247248 > > Do you have any clues on how to resolve this? > > > Thanks! > > -- 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/fa94caf5-73e2-4b40-a7b9-f56b4153894fn%40googlegroups.com.
