Skip to main content
 首页 » 编程设计

python之PyCharm import matplotlib.pyplot 显示错误

2025年05月04日13lyj

import numpy as np 
import matplotlib.pyplot as plt 
 
def main(): 
    x = np.arange(0, 5, 0.1) 
    y = np.sin(x) 
    plt.plot(x, y) 
 
if __name__ == '__main__': 
    main() 

追溯(最近的调用最后):

  File  
"/Users/tim/workspace/Python/MachineLearn/test.py", line 2, in <module> 
    import matplotlib.pyplot as plt 
  File "/usr/local/lib/python2.7/site-packages/matplotlib/pyplot.py", line 115, in <module> 
    _backend_mod, new_figure_manager, draw_if_interactive, _show = pylab_setup() 
  File "/usr/local/lib/python2.7/site-packages/matplotlib/backends/__init__.py", line 63, in pylab_setup 
    [backend_name], 0) 
  File "/Applications/PyCharm.app/Contents/helpers/pycharm_matplotlib_backend/backend_interagg.py", line 11, in <module> 
    from datalore.display import display 
  File "/Applications/PyCharm.app/Contents/helpers/pycharm_display/datalore/display/__init__.py", line 1, in <module> 
    from .display_ import * 
  File "/Applications/PyCharm.app/Contents/helpers/pycharm_display/datalore/display/display_.py", line 5, in <module> 
    from urllib.parse import urlencode 
ImportError: No module named parse 

进程结束,退出代码为 1

=================

python :2.7.16

PyCharm 专业版:2019.2

=================

顺便说一句,在控制台模式下运行的代码可以工作

请您参考如下方法:

简单的答案:禁用“在科学窗口中显示绘图”(设置 -> 工具 -> Python Scientific)或降级 PyCharm 或将项目移动到 python3
请记住在您的代码中添加 plt.show()。

有点复杂。您需要编写自己的导入 Hook 以找到 urllib.parse 和 urllib.request(请求 display_.py 文件中的下一行。更多你可以在这里阅读 https://xion.org.pl/2012/05/06/hacking-python-imports/

(我对 python 2 导入系统还不够熟悉,无法编写它)