Python Mac OS X上pipenv内部带有matplotlib的空白打印

Python Mac OS X上pipenv内部带有matplotlib的空白打印,python,macos,matplotlib,pipenv,Python,Macos,Matplotlib,Pipenv,短版 试图通过plt.show()在pipenv内显示绘图会打开一个完全白色的窗口,没有错误。调整窗口大小会使其完全变黑。希望看到描述函数的绘图f(x)=x^2(参见下面的代码) 更多信息 使用plt.savefig('tmp.png')保存绘图效果良好 通过$pip3 install matplotlib将matplotlib安装到系统范围的python3不会导致任何问题。只有在执行相同代码的pipenv中安装了matplotlib时,才会出现此问题(见下文) 版本: Mac OS Moja

短版

试图通过
plt.show()
pipenv
内显示绘图会打开一个完全白色的窗口,没有错误。调整窗口大小会使其完全变黑。希望看到描述函数的绘图
f(x)=x^2
(参见下面的代码)

更多信息

使用
plt.savefig('tmp.png')
保存绘图效果良好

通过
$pip3 install matplotlib
matplotlib
安装到系统范围的python3不会导致任何问题。只有在执行相同代码的
pipenv
中安装了
matplotlib
时,才会出现此问题(见下文)

版本:

  • Mac OS Mojave 10.14.2
  • pipenv版本2018.11.26
  • matplotlib==3.0.2
  • pipenv和系统python版本3.7.2
有些令人惊讶的是,我可以让它在运行Sierra 10.12.6的旧Mac上运行,另外还有相同版本的pipenv、python和matplotlib。但我想我从来没有遇到过同样的问题

我尝试过的

  • 已安装
    tcl-tk
    $brew安装tcl-tk
  • 设置后端:
    $echo“后端:TkAgg”>~/.matplotlib/matplotlibrc
  • 已安装X11服务器
  • 我错过了什么?

    在这一点上,我没有主意了。对于如何在
    pipenv
    中正确显示绘图的任何提示,我们将不胜感激

    这是否与本文中提到的python框架安装有关

    代码

    import numpy as np
    import matplotlib
    from matplotlib import pyplot as plt
    
    if __name__ == "__main__":
        plt.figure()
        x = np.arange(0, 10, 1)
        y = x*x
    
        plt.plot(x, y)
        # plt.savefig("tmp.png")    # works fine
        plt.show()
    

    如果您仍然存在此问题,我通过将python安装为框架(我安装了conda
    brew cask安装anaconda
    。然后将您的anaconda添加到路径:
    export path=$HOME/anaconda3/bin/:$path
    通过
    vim~/.bash_profile
    。我仍然可以让pipenv与anaconda合作