精简版
尝试通过 plt.show()
在 pipenv
中显示绘图会打开一个完全白色的窗口,没有错误。调整窗口大小使其完全变黑。希望看到描绘函数 f(x) = x^2
的图(请参见下面的代码)。
更多信息
使用 plt.savefig('tmp.png')
保存绘图效果很好。
通过 $ pip3 install matplotlib
将 matplotlib
安装到系统范围的 python3 不会导致任何问题。仅当 matplotlib
安装在执行相同代码的 pipenv
中时才会出现此问题(见下文)。
版本:
- Mac 操作系统 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 install tcl-tk
- 设置后端:
$ echo "backend: TkAgg">> ~/.matplotlib/matplotlibrc
- 已安装 X11 服务器
我错过了什么?
此时我已经没有想法了。非常感谢任何关于如何让绘图在 pipenv
中正确显示的提示。
这与 matplotlib docs 中提到的 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 install anaconda
。然后将你的 Anaconda 添加到路径:export PATH= $HOME/anaconda3/bin/:$PATH
通过 vim ~/.bash_profile
。我仍然可以使用 Pipenv 与 Anaconda。
关于python - Mac OS X 上 pipenv 中带有 matplotlib 的空白图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54845091/