Skip to content

[MNT]: Broken compatibility with numpy 2.1.* #28804

@Elimiriel

Description

@Elimiriel

Summary

Numpy warned me about compatibility before but worked with the other module not matplotlib, but it has became error after manual update by me in 24.09.11, via pip. numpy: 2.1.1, matplotlib: 3.9.2, installed through anaconda but I updated them in manual and using VS Code. Sorry for lack of experience about using github even my account is a old one.

Detailed error messages

  1. from numpy:

Traceback (most recent call last):
ImportError Traceback (most recent call last)
File c:\ProgramData\anaconda3\Lib\site-packages\numpy\core_multiarray_umath.py:44, in getattr(attr_name)
39 # Also print the message (with traceback). This is because old versions
40 # of NumPy unfortunately set up the import to replace (and hide) the
41 # error. The traceback shouldn't be needed, but e.g. pytest plugins
42 # seem to swallow it and we should be failing anyway...
43 sys.stderr.write(msg + tb_msg)
---> 44 raise ImportError(msg)

  1. From matplotlib:

ImportError Traceback (most recent call last)
ImportError: numpy.core.multiarray failed to import

The above exception was the direct cause of the following exception:

ImportError Traceback (most recent call last)
Cell In[3], line 3
1 import numpy as np;
2 import torch;
----> 3 import matplotlib.pyplot as plt;
4 import scipy;
5 import torch.nn as nn;

File c:\ProgramData\anaconda3\Lib\site-packages\matplotlib_init_.py:159
155 from packaging.version import parse as parse_version
157 # cbook must import matplotlib only within function
158 # definitions, so it is safe to import from it here.
--> 159 from . import _api, _version, cbook, _docstring, rcsetup
160 from matplotlib.cbook import sanitize_sequence
161 from matplotlib._api import MatplotlibDeprecationWarning

File c:\ProgramData\anaconda3\Lib\site-packages\matplotlib\rcsetup.py:28
26 from matplotlib.backends import BackendFilter, backend_registry
27 from matplotlib.cbook import ls_mapper
---> 28 from matplotlib.colors import Colormap, is_color_like
29 from matplotlib._fontconfig_pattern import parse_fontconfig_pattern
30 from matplotlib._enums import JoinStyle, CapStyle

File c:\ProgramData\anaconda3\Lib\site-packages\matplotlib\colors.py:57
55 import matplotlib as mpl
56 import numpy as np
---> 57 from matplotlib import _api, _cm, cbook, scale
58 from ._color_data import BASE_COLORS, TABLEAU_COLORS, CSS4_COLORS, XKCD_COLORS
61 class _ColorMapping(dict):

File c:\ProgramData\anaconda3\Lib\site-packages\matplotlib\scale.py:22
20 import matplotlib as mpl
21 from matplotlib import _api, _docstring
---> 22 from matplotlib.ticker import (
23 NullFormatter, ScalarFormatter, LogFormatterSciNotation, LogitFormatter,
24 NullLocator, LogLocator, AutoLocator, AutoMinorLocator,
25 SymmetricalLogLocator, AsinhLocator, LogitLocator)
26 from matplotlib.transforms import Transform, IdentityTransform
29 class ScaleBase:

File c:\ProgramData\anaconda3\Lib\site-packages\matplotlib\ticker.py:144
142 import matplotlib as mpl
143 from matplotlib import _api, cbook
--> 144 from matplotlib import transforms as mtransforms
146 _log = logging.getLogger(name)
148 all = ('TickHelper', 'Formatter', 'FixedFormatter',
149 'NullFormatter', 'FuncFormatter', 'FormatStrFormatter',
150 'StrMethodFormatter', 'ScalarFormatter', 'LogFormatter',
(...)
156 'MultipleLocator', 'MaxNLocator', 'AutoMinorLocator',
157 'SymmetricalLogLocator', 'AsinhLocator', 'LogitLocator')

File c:\ProgramData\anaconda3\Lib\site-packages\matplotlib\transforms.py:49
46 from numpy.linalg import inv
48 from matplotlib import _api
---> 49 from matplotlib._path import (
50 affine_transform, count_bboxes_overlapping_bbox, update_path_extents)
51 from .path import Path
53 DEBUG = False

ImportError: initialization failed

  1. Extras-other modules included, last 6 lines are about matplotlib:

File "", line 198, in _run_module_as_main
File "", line 88, in _run_code
File "c:\ProgramData\anaconda3\Lib\site-packages\ipykernel_launcher.py", line 18, in
app.launch_new_instance()
File "c:\ProgramData\anaconda3\Lib\site-packages\traitlets\config\application.py", line 1075, in launch_instance
app.start()
File "c:\ProgramData\anaconda3\Lib\site-packages\ipykernel\kernelapp.py", line 739, in start
self.io_loop.start()
File "c:\ProgramData\anaconda3\Lib\site-packages\tornado\platform\asyncio.py", line 205, in start
self.asyncio_loop.run_forever()
File "c:\ProgramData\anaconda3\Lib\asyncio\base_events.py", line 641, in run_forever
self._run_once()
File "c:\ProgramData\anaconda3\Lib\asyncio\base_events.py", line 1987, in _run_once
handle._run()
File "c:\ProgramData\anaconda3\Lib\asyncio\events.py", line 88, in _run
self._context.run(self._callback, *self._args)
File "c:\ProgramData\anaconda3\Lib\site-packages\ipykernel\kernelbase.py", line 545, in dispatch_queue
await self.process_one()
File "c:\ProgramData\anaconda3\Lib\site-packages\ipykernel\kernelbase.py", line 534, in process_one
await dispatch(*args)
File "c:\ProgramData\anaconda3\Lib\site-packages\ipykernel\kernelbase.py", line 437, in dispatch_shell
await result
File "c:\ProgramData\anaconda3\Lib\site-packages\ipykernel\ipkernel.py", line 362, in execute_request
await super().execute_request(stream, ident, parent)
File "c:\ProgramData\anaconda3\Lib\site-packages\ipykernel\kernelbase.py", line 778, in execute_request
reply_content = await reply_content
File "c:\ProgramData\anaconda3\Lib\site-packages\ipykernel\ipkernel.py", line 449, in do_execute
res = shell.run_cell(
File "c:\ProgramData\anaconda3\Lib\site-packages\ipykernel\zmqshell.py", line 549, in run_cell
return super().run_cell(*args, **kwargs)
File "c:\ProgramData\anaconda3\Lib\site-packages\IPython\core\interactiveshell.py", line 3075, in run_cell
result = self._run_cell(
File "c:\ProgramData\anaconda3\Lib\site-packages\IPython\core\interactiveshell.py", line 3130, in run_cell
result = runner(coro)
File "c:\ProgramData\anaconda3\Lib\site-packages\IPython\core\async_helpers.py", line 128, in pseudo_sync_runner
coro.send(None)
File "c:\ProgramData\anaconda3\Lib\site-packages\IPython\core\interactiveshell.py", line 3334, in run_cell_async
has_raised = await self.run_ast_nodes(code_ast.body, cell_name,
File "c:\ProgramData\anaconda3\Lib\site-packages\IPython\core\interactiveshell.py", line 3517, in run_ast_nodes
if await self.run_code(code, result, async
=asy):
File "c:\ProgramData\anaconda3\Lib\site-packages\IPython\core\interactiveshell.py", line 3577, in run_code
exec(code_obj, self.user_global_ns, self.user_ns)
File "C:\Users\elimi\AppData\Local\Temp\ipykernel_11220\1158092262.py", line 3, in
import matplotlib.pyplot as plt;
File "c:\ProgramData\anaconda3\Lib\site-packages\matplotlib_init
.py", line 159, in
from . import _api, _version, cbook, _docstring, rcsetup
File "c:\ProgramData\anaconda3\Lib\site-packages\matplotlib\rcsetup.py", line 28, in
from matplotlib.colors import Colormap, is_color_like
File "c:\ProgramData\anaconda3\Lib\site-packages\matplotlib\colors.py", line 57, in
from matplotlib import _api, _cm, cbook, scale
File "c:\ProgramData\anaconda3\Lib\site-packages\matplotlib\scale.py", line 22, in
from matplotlib.ticker import (
File "c:\ProgramData\anaconda3\Lib\site-packages\matplotlib\ticker.py", line 144, in
from matplotlib import transforms as mtransforms
File "c:\ProgramData\anaconda3\Lib\site-packages\matplotlib\transforms.py", line 49, in
from matplotlib._path import (

Proposed fix

Suggestion from numpy:

A module that was compiled using NumPy 1.x cannot be run in
NumPy 2.1.1 as it may crash. To support both 1.x and 2.x
versions of NumPy, modules must be compiled with NumPy 2.0.
Some module may need to rebuild instead e.g. with 'pybind11>=2.12'.

I'm a newbie in programming field, so sorry about the lack of my proposals. My incomplete code doesn't require matplotlib in debugging stage in now, but requires this module for checking results.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions