无法从 'matplotlib.cbook' 导入名称 'iterable'

Cannot import name 'iterable' from 'matplotlib.cbook'

最近,我更新到Ubuntu 22。我正在使用python 3.10。

为 python 安装 matplotlib 和其他所需的库后,我正在尝试绘制一些图表。

每次我在 运行 我的代码中遇到这个错误。 我遵循了 Whosebug 或 Google 中给出的所有解决方案,但没有运气。

这是我遇到的错误:

File ~/.local/lib/python3.10/site-packages/prettyplotlib/_eventplot.py:3, in <module>
      1 __author__ = 'jgosmann'
----> 3 from matplotlib.cbook import iterable
      5 from prettyplotlib.utils import remove_chartjunk, maybe_get_ax
      6 from prettyplotlib.colors import set2

ImportError: cannot import name 'iterable' from 'matplotlib.cbook'

当我导入 matplotlib 时,没有问题。

我怎样才能摆脱这个错误? 如有任何帮助或建议,我们将不胜感激。

谢谢

来自 https://github.com/matplotlib/matplotlib/commit/08dc21b038e43401652fed765288bb669abb8b0c#diff-734998909c4e54bce8138043e769bea5654259de61cc909be9d84b04485cdae9R46,看起来这是 removed/deprecated。

评论建议使用numpy.iterable()

所以我猜你需要更改:

 from matplotlib.cbook import iterable

 from numpy import iterable

如果有人正在寻找解决此问题的答案,

然后按照以下步骤操作:

步骤 1) 完全卸载 matplotlib

步骤 2 ) 然后安装 matplotlib : pip3 install -U matplotlib==3.2