maplotlib.pyplot.show() 适用于 python 但不适用于 jupyter 控制台

阿尼凯特·德什潘德

我看过这个问题看过这个问题对我来说,matplotlib.pyplot.show() 显示的是来自 python 的图,而不是来自 jupyter 控制台的图。

matplotlib.matplotlib_fname() 为两者返回相同的 matplotlibrc 文件位置。

但是,当我尝试查找与matplotlib.rcParams['backend']jupyter 一起使用的后端时,控制台告诉我 - 'module://ipykernel.pylab.backend_inline',无论我已经修改了要使用的 matplotlibrc 文件的后端。

另一方面,Python 正确显示了我正在使用的后端;目前'TkAgg'。

我使用python -mpip install -U matplotlib.

我正在使用以下版本:

  • 视窗 10
  • Jupyter 控制台 5.2.0
  • 蟒蛇 2.7.14
  • IPython 5.5.0

我可以使用 python,但也可以为 jupyter 控制台解决这个问题。

存在的重要性欧内斯特

首先注意它plt.show()按预期工作,也在 Juypter 中。

在此处输入图片说明

这使用默认'module://ipykernel.pylab.backend_inline'后端。该后端由 JupyterrcParams设置,与设置无关

您可以使用设置后端matplotlib.use()

import matplotlib
matplotlib.use("TkAgg")
import matplotlib.pyplot as plt
plt.plot([1,2,3])
plt.show()

或者只是使用 IPython 魔法 %matplotlib backendname

%matplotlib tk
import matplotlib.pyplot as plt
plt.plot([1,2,3])
plt.show()

您可以使用更改后端pyplot.switch_backend()

plt.switch_backend("TkAgg")
plt.plot([1,2,3])
plt.show()

或使用相同的 IPython 魔法

%matplotlib tk
plt.plot([1,2,3])
plt.show()

如果要将后端设置为默认使用,请参阅此问题:在 Jupyter Ipython 中更改 matplotlib 的默认后端

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Jupyter Notebook中的适用于Python 3的ModuleNotFoundError,但不适用于Python 2(Mac OSX)

带有 Plotly/python 数据框的语言环境库适用于 jupyter,但不适用于 Flask/dash

Curl 请求适用于控制台,但不适用于 PHP

相同的代码适用于chrome DevTools控制台,但不适用于TamperMonkey

从 localStorage 检索对象适用于控制台日志,但不适用于页面

MYSQL LOAD DATA INFILE 语句适用于工作台,但不适用于 python

nbconvert --to pdf可以使用,但不适用于Jupyter Notebook菜单(Python)

Log4net适用于控制台应用程序,但不适用于Windows服务

serilog minimumlevel 覆盖不适用于控制台,但适用于滚动文件

从控制台访问API是可行的,但不适用于MVC Web

适用于Python 2但不适用于Python 3的Python子进程PIPE

python regex适用于regex101但不适用于python2

POST请求适用于Postman,但不适用于Python

Python中的Selenium预期条件适用于Firefox,但不适用于Chrome

googlemaps api适用于python终端,但不适用于脚本

Alfresco 基本身份验证适用于 curl 但不适用于 python

pyspark saveAsTextFile适用于python 2.7,但不适用于3.4

PHP 文件上传适用于 HTTP 表单,但不适用于 Python 脚本

适用于python的简单控制台文本编辑器

C# 扩展适用于控制台应用程序,但不适用于 MVC Web 应用程序。我错过了什么吗?

为什么我的更改复选框不适用于js文件,但适用于控制台?

Javascript正则表达式不适用于脚本,但适用于控制台

HttpWebRequest/HttpWebResponse 仅适用于控制台应用程序而不适用于 ASP.NET

Jupyter Notebook找不到适用于python 3.6的模块

grub条目仅适用于控制台

是否有适用于 Windows 控制台的 API?

Form.Show()不适用于1台特定计算机

单击不适用于python硒

Python硒不适用于WebDriverWait