Python Matplotlib绘图窗口为白色空白,不显示任何图像
我使用的是Mac OS 10.14.4。我已经在miniconda3环境中安装了python。以下是带有“康达列表”的包裹列表 我遇到的问题是,当我在终端中运行“python”并打开shell时,我会尝试逐个运行代码Python Matplotlib绘图窗口为白色空白,不显示任何图像,python,python-3.x,matplotlib,miniconda,Python,Python 3.x,Matplotlib,Miniconda,我使用的是Mac OS 10.14.4。我已经在miniconda3环境中安装了python。以下是带有“康达列表”的包裹列表 我遇到的问题是,当我在终端中运行“python”并打开shell时,我会尝试逐个运行代码 import openmc sp1 = openmc.StatePoint('statepoint.550-20.h5') tally1 = sp1.tallies[1] flux1 = tally1.mean.ravel() import matplotlib.pyplot
import openmc
sp1 = openmc.StatePoint('statepoint.550-20.h5')
tally1 = sp1.tallies[1]
flux1 = tally1.mean.ravel()
import matplotlib.pyplot as plt
import numpy as np
y = np.reshape(flux1, (200,200))
plt.imshow(y, cmap=plt.cm.viridis)
plt.show()
我遇到的问题是在运行plt.show()
之后,绘图窗口打开,显示一个白色屏幕,其中没有任何图像。现在,如果我运行plt.savefig('19.7fast.png')
而不是plt.show()
,我可以将图像保存在终端中运行python shell的目录中
当我运行import matplotlib.pyplot作为plt时;plt.get_backend()
在python shell中,我看到了'TkAgg'
,现在我尝试更改为plt.switch_backend('MacOSX')
,因为我看到了一些类似的问题和类似的解决方案。但是,这给了我一个错误
ImportError:Python未作为框架安装。如果Python未作为框架安装,Mac OS X后端将无法正常工作。有关在Mac OS X上安装Python作为框架的更多信息,请参阅Python文档。请重新安装Python作为框架,或者尝试其他后端。如果您正在使用(Ana)Conda,请安装python.app并将“python”替换为“pythonw”。有关详细信息,请参阅Matplotlib常见问题解答中的“在OSX上使用Matplotlib”
根据我的经验,解决这个问题的任何帮助都是非常宝贵的。要在Mac OS上实现这一点,我发现使用完整版本的Anaconda并使用VS代码作为编辑器/IDE要容易得多 卸载Miniconda:
- 打开终端窗口并删除整个miniconda安装目录:
- 您还可以编辑“`~/.bash\u profile``并从PATH环境变量中删除miniconda目录
- 删除隐藏的.condarc文件以及通常在目录中创建的.conda和.continuum目录:
- 转到并下载Mac OS安装程序(我建议选择最新版本的Python(3.7)
- 按照安装说明进行操作
- 安装后,打开Anaconda Navigator并选择安装VS代码的选项:
- 通过Anaconda安装程序打开VS代码
- 创建新脚本:文件>新文件
- 将其另存为“test.py”
- 输入以下代码:
- 保存文件
- 选择Anaconda Python解释器:
- 打开命令托盘(
)Ctrl+Shift+P
- 输入“Python:选择解释器”
- 选择名字里写着“巨蟒”的那个
- 再次打开命令对话框(
)Ctrl+Shift+P
- 输入“Python:创建终端”并在终端运行中:
根据我的经验,要在Mac OS上实现这一点,我发现使用完整版本的Anaconda并使用VS代码作为编辑器/IDE要容易得多 卸载Miniconda:
- 打开终端窗口并删除整个miniconda安装目录:
- 您还可以编辑“`~/.bash\u profile``并从PATH环境变量中删除miniconda目录
- 删除隐藏的.condarc文件以及通常在目录中创建的.conda和.continuum目录:
- 转到并下载Mac OS安装程序(我建议选择最新版本的Python(3.7)
- 按照安装说明进行操作
- 安装后,打开Anaconda Navigator并选择安装VS代码的选项:
- 通过Anaconda安装程序打开VS代码
- 创建新脚本:文件>新文件
- 将其另存为“test.py”
- 输入以下代码:
- 保存文件
- 选择Anaconda Python解释器:
- 打开命令托盘(
)Ctrl+Shift+P
- 输入“Python:选择解释器”
- 选择名字里写着“巨蟒”的那个
- 再次打开命令对话框(
)Ctrl+Shift+P
- 输入“Python:创建终端”并在终端运行中:
通过添加此代码(如中所述),我能够修复macOS
Majave 10.14.6
的问题,而无需通过Anaconda/Conda重新安装:
我相信
platform.system()==“Darwin”
允许此代码在其他平台下工作。我能够解决macOSMajave 10.14.6
的问题,而无需通过Anaconda/Conda重新安装此代码(如中所述):
我相信
platform.system()打开白色空白窗口,没有图像。请参见“谢谢”。刚才有人报告了一个类似的问题:我不认为TkAgg在MacOS上特别强大,而且它似乎以奇怪的方式失败。如果你真的想要MacOS后端,你需要conda安装python.app
并运行pythonw
,而不是python.H然而,大多数matplotlib开发者只使用pyqt
,这应该调用qt5Agg
后端。开始更简单。你能用matplotlib显示任何图形吗?比如python-c“将matplotlib.pyplot导入为plt;plt.plot([1,3,2]);plt.show()
?正如我所说的plt.show()打开白色空白的窗口,n
rm -rf ~/miniconda.
rm -rf ~/.condarc ~/.conda ~/.continuum
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(-4*np.pi,4*np.pi)
y = np.sin(x)
plt.plot(x,y,'.-')
plt.show()
python test.py
import matplotlib
import platform
if platform.system() == 'Darwin':
matplotlib.use('MacOSX')
else:
matplotlib.use('TkAgg')