【问题标题】:"ImportError: matplotlib is required for plotting when the default backend "matplotlib" is selected."“ImportError:选择默认后端“matplotlib”时,绘图需要 matplotlib。”
【发布时间】:2021-10-18 09:10:33
【问题描述】:

无法理解我收到此错误的原因以及如何修复它。 我正在尝试为附近的列表数量绘制图表。 我已经尝试卸载然后重新安装 pandas,但它似乎不起作用

通过运行以下代码:

feq=listings['neighbourhood'].value_counts().sort_values(ascending=True)
feq.plot.barh(figsize=(10, 8), color='b', width=1)
plt.title("Number of listings by neighbourhood", fontsize=20)
plt.xlabel('Number of listings', fontsize=12)
plt.show()

遇到这个错误:

ImportError: matplotlib is required for plotting when the default backend "matplotlib" is selected.
---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
C:\Users\DIKSHA~1\AppData\Local\Temp/ipykernel_2704/2039381319.py in <module>
      1 feq=listings['neighbourhood'].value_counts().sort_values(ascending=True)
----> 2 feq.plot.barh(figsize=(10, 8), color='b', width=1)
      3 plt.title("Number of listings by neighbourhood", fontsize=20)
      4 plt.xlabel('Number of listings', fontsize=12)
      5 plt.show()

~\anaconda3\lib\site-packages\pandas\plotting\_core.py in barh(self, x, y, **kwargs)
   1197             >>> index = ['snail', 'pig', 'elephant',
   1198             ...          'rabbit', 'giraffe', 'coyote', 'horse']
-> 1199             >>> df = pd.DataFrame({'speed': speed,
   1200             ...                    'lifespan': lifespan}, index=index)
   1201             >>> ax = df.plot.barh(x='lifespan')

~\anaconda3\lib\site-packages\pandas\plotting\_core.py in __call__(self, *args, **kwargs)
    873                 "arguments, only keyword arguments. The order of "
    874                 "positional arguments will change in the future. "
--> 875                 f"Use `Series.plot({keyword_args})` instead of "
    876                 f"`Series.plot({positional_args})`."
    877             )

~\anaconda3\lib\site-packages\pandas\plotting\_core.py in _get_plot_backend(backend)
   1784         f"Could not find plotting backend '{backend}'. Ensure that you've "
   1785         f"installed the package providing the '{backend}' entrypoint, or that "
-> 1786         "the package has a top-level `.plot` method."
   1787     )
   1788 

ImportError: matplotlib is required for plotting when the default backend "matplotlib" is selected.

【问题讨论】:

标签: python pandas matplotlib jupyter-notebook


【解决方案1】:

我将 bar 拼错为“barh”(feq.plot.barh(figsize=(10, 8), color='b', width=1)) 这导致了这个错误。

【讨论】:

  • .plot.bar.plot.barh 都是有效的。这是评论,还是应该是问题的edit,因为它看起来不像是答案?
猜你喜欢
  • 2020-07-13
  • 2019-03-13
  • 2020-07-15
  • 1970-01-01
  • 2014-10-04
  • 2013-03-26
  • 2018-06-20
  • 1970-01-01
相关资源
最近更新 更多