Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

auto_screen fails #55

Closed
dwr-psandhu opened this issue Jul 17, 2024 · 4 comments
Closed

auto_screen fails #55

dwr-psandhu opened this issue Jul 17, 2024 · 4 comments
Assignees
Labels
bug Something isn't working

Comments

@dwr-psandhu
Copy link
Contributor

Description

Jenkins auto screen step fails after latest update. See error snippet below

<class 'tuple'>
meta is True
Region file:  screen_regions_v20230126.shp
station_id:  afo  subloc:  default  param:  temp
Traceback (most recent call last):
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Scripts\auto_screen-script.py", line 9, in <module>
    sys.exit(main())
             ^^^^^^
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\dms_datastore\auto_screen.py", line 566, in main
    auto_screen(
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\dms_datastore\auto_screen.py", line 262, in auto_screen
    proto = context_config(screen_config, station_id, subloc, param)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\dms_datastore\auto_screen.py", line 367, in context_config
    region = spatial_config(region_file, x, y)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\dms_datastore\auto_screen.py", line 477, in spatial_config
    return checker.region_info(x, y)
           ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\dms_datastore\auto_screen.py", line 419, in region_info
    point_in_polys = gpd.tools.sjoin(points, self.shp, op="within", how="left")
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\geopandas\tools\sjoin.py", line 110, in sjoin
    raise TypeError(f"sjoin() got an unexpected keyword argument '{first}'")
TypeError: sjoin() got an unexpected keyword argument 'op'
@dwr-psandhu dwr-psandhu added the bug Something isn't working label Jul 17, 2024
@dwr-psandhu
Copy link
Contributor Author

@esatel With the latest changes on Sept 27th, this the error message now

Traceback (most recent call last):
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\matplotlib\offsetbox.py", line 369, in get_window_extent
    px, py = self.get_offset(bbox, renderer)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\matplotlib\offsetbox.py", line 60, in get_offset
    return meth(params["self"], bbox, params["renderer"])
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\matplotlib\offsetbox.py", line 306, in get_offset
    self._offset(bbox.width, bbox.height, -bbox.x0, -bbox.y0, renderer)
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\matplotlib\legend.py", line 735, in _findoffset
    x, y = self._find_best_position(width, height, renderer)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\matplotlib\legend.py", line 1167, in _find_best_position
    bboxes, lines, offsets = self._auto_legend_data()
                             ^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\matplotlib\legend.py", line 971, in _auto_legend_data
    artist.get_transform().transform_path(artist.get_path()))
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\matplotlib\transforms.py", line 1610, in transform_path
    return self.transform_path_affine(self.transform_path_non_affine(path))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\matplotlib\transforms.py", line 1620, in transform_path_affine
    return self.get_affine().transform_path_affine(path)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\matplotlib\transforms.py", line 1812, in transform_path_affine
    return Path(self.transform_affine(path.vertices),
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\matplotlib\_api\deprecation.py", line 300, in wrapper
    return func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\matplotlib\transforms.py", line 1865, in transform_affine
    return affine_transform(values, mtx)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: affine_transform(): incompatible function arguments. The following argument types are supported:
    1. (points: numpy.ndarray[numpy.float64], trans: trans_affine) -> object

Invoked with: array([[14083.        ,    22.87      ],
       [14083.01041667,    22.74      ],
       [14083.02083333,    22.62      ],
       ...,
       [18655.36458333,    23.43      ],
       [18655.375     ,    23.31      ],
       [18655.38541667,    23.2       ]]), array([[ 9.86157224e-02,  0.00000000e+00, -1.28625976e+03],
       [ 0.00000000e+00,  1.38969311e+01, -1.43735958e+01],
       [ 0.00000000e+00,  0.00000000e+00,  1.00000000e+00]])

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Scripts\auto_screen-script.py", line 9, in <module>
    sys.exit(main())
             ^^^^^^
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\dms_datastore\auto_screen.py", line 566, in main
    auto_screen(
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\dms_datastore\auto_screen.py", line 266, in auto_screen
    screened = screener(
               ^^^^^^^^^
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\dms_datastore\auto_screen.py", line 91, in screener
    plot_anomalies(
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\dms_datastore\auto_screen.py", line 144, in plot_anomalies
    plt.savefig(f"{fname}.png")
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\matplotlib\pyplot.py", line 1228, in savefig
    res = fig.savefig(*args, **kwargs)  # type: ignore[func-returns-value]
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\matplotlib\figure.py", line 3395, in savefig
    self.canvas.print_figure(fname, **kwargs)
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\matplotlib\backends\backend_qtagg.py", line 75, in print_figure
    super().print_figure(*args, **kwargs)
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\matplotlib\backend_bases.py", line 2204, in print_figure
    result = print_method(
             ^^^^^^^^^^^^^
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\matplotlib\backend_bases.py", line 2054, in <lambda>
    print_method = functools.wraps(meth)(lambda *args, **kwargs: meth(
                                                                 ^^^^^
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\matplotlib\backends\backend_agg.py", line 496, in print_png
    self._print_pil(filename_or_obj, "png", pil_kwargs, metadata)
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\matplotlib\backends\backend_agg.py", line 444, in _print_pil
    FigureCanvasAgg.draw(self)
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\matplotlib\backends\backend_agg.py", line 387, in draw
    self.figure.draw(self.renderer)
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\matplotlib\artist.py", line 95, in draw_wrapper
    result = draw(artist, renderer, *args, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\matplotlib\artist.py", line 72, in draw_wrapper
    return draw(artist, renderer)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\matplotlib\figure.py", line 3162, in draw
    mimage._draw_list_compositing_images(
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\matplotlib\image.py", line 132, in _draw_list_compositing_images
    a.draw(renderer)
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\matplotlib\artist.py", line 72, in draw_wrapper
    return draw(artist, renderer)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\matplotlib\axes\_base.py", line 3137, in draw
    mimage._draw_list_compositing_images(
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\matplotlib\image.py", line 132, in _draw_list_compositing_images
    a.draw(renderer)
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\matplotlib\artist.py", line 72, in draw_wrapper
    return draw(artist, renderer)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\matplotlib\legend.py", line 766, in draw
    bbox = self._legend_box.get_window_extent(renderer)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\matplotlib\offsetbox.py", line 371, in get_window_extent
    px, py = self.get_offset()
             ^^^^^^^^^^^^^^^^^
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\matplotlib\offsetbox.py", line 56, in get_offset
    params = _api.select_matching_signature(sigs, self, *args, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\ProgramData\miniconda3\envs\dms_datastore\Lib\site-packages\matplotlib\_api\__init__.py", line 324, in select_matching_signature
    return func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^
TypeError: _compat_get_offset.<locals>.<lambda>() missing 2 required positional arguments: 'bbox' and 'renderer'

@water-e
Copy link
Contributor

water-e commented Oct 3, 2024

Is this one issue or did it get morphed? The deprecation (original bug) was fixed in July.

@water-e
Copy link
Contributor

water-e commented Oct 3, 2024

I can't replicate this on my setup, which seems like a matplotlib+versioning/packaging issue. Can you verify that a five line sample problem with savefig in it works? Any difference between plt.savefig and fig.savefig?

@dwr-psandhu
Copy link
Contributor Author

Thanks. Looks like a Jenkins issue where it ran out disk space. Closing this issue as the rest of it seems stale

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants