解决Matplotlib图表不能在Pycharm中显示的问题


Posted in Python onMay 24, 2018

初学者可能都会遇到一个小问题就是:在用IPython的时候,可以使用类似

%matplotlib inline

的Magic Function(魔法函数)来显示Matplotlib图表,但是用Pycharm编写项目的时候是不能写magic函数的,会出现编译错误:

解决Matplotlib图表不能在Pycharm中显示的问题

但是不加这行,运行后,Matplotlib图表就不会正常显示。程序运行后也不会报错,只会在控制台输出:

Process finished with exit code 0

后了事。

因此,我们的关注点似乎要移动到Magic Function身上了,什么是Magic函数呢?

官方给出的定义是:IPython有一组预先定义好的所谓的魔法函数(Magic Functions),你可以通过命令行的语法形式来访问它们。可见“%matplotlib inline”就是模仿命令行来访问magic函数的在IPython中独有的形式。

magic函数分两种:一种是面向行的,另一种是面向单元型的。

行magic函数是用前缀“%”标注的,很像我们在系统中使用命令行时的形式,例如在Mac中就是你的用户名后面跟着“$”。“%”后面就是magic函数的参数了,但是它的参数是没有被写在括号或者引号中来传值的。

单元型magic函数是由两个“%%”做前缀的,它的参数不仅是当前“%%”行后面的内容,也包括了在当前行以下的行。比如:计算代码执行时间的timeit函数,我们可以这样写

In [2]: %%timeit x = range(10000)
 ...: min(x)
1000 loops, best of 3: 223 us per loop

既然是IPython的内置magic函数,那么在Pycharm中是不会支持的。但是我们可以在matplotlib中的pyplot身上下功夫,pyplot不会不提供展示图像的功能。

所以代码可以这样写:

import numpy as np
from matplotlib import pyplot as plt

from skimage import data

random_image = np.random.random([500, 500])
print(random_image)
plt.imshow(random_image, cmap='gray')
plt.colorbar()
plt.show()

最后加入了plt.show(),这样就可以将我们生成的图像显示出来了。

另外,IPython的内置magic函数包括三种:

1. 伴随你的代码使用的函数:%run, %edit, %save, %macro, %recall等;

2. 可以影响到脚本本身的函数:%colors, %xmode, %autoindent, %automagic等;

3. 其他的函数: %reset, %timeit, %%writefile, %load, %paste。

谢谢大家能看到这里。

以上这篇解决Matplotlib图表不能在Pycharm中显示的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中实现从目录中过滤出指定文件类型的文件
Feb 02 Python
Python设计模式之观察者模式简单示例
Jan 10 Python
Python多重继承的方法解析执行顺序实例分析
May 26 Python
Python Grid使用和布局详解
Jun 30 Python
对pandas将dataframe中某列按照条件赋值的实例讲解
Nov 29 Python
解决nohup执行python程序log文件写入不及时的问题
Jan 14 Python
在PyCharm的 Terminal(终端)切换Python版本的方法
Aug 02 Python
django+echart数据动态显示的例子
Aug 12 Python
python__name__原理及用法详解
Nov 02 Python
Python彻底删除文件夹及其子文件方式
Dec 23 Python
零基础学python应该从哪里入手
Aug 11 Python
python plt.plot bar 如何设置绘图尺寸大小
Jun 01 Python
Python系统监控模块psutil功能与经典用法分析
May 24 #Python
详解Django rest_framework实现RESTful API
May 24 #Python
matplotlib.pyplot画图 图片的二进制流的获取方法
May 24 #Python
matplotlib 输出保存指定尺寸的图片方法
May 24 #Python
Python简单获取网卡名称及其IP地址的方法【基于psutil模块】
May 24 #Python
在Django中输出matplotlib生成的图片方法
May 24 #Python
详解Pytorch 使用Pytorch拟合多项式(多项式回归)
May 24 #Python
You might like
一道求$b相对于$a的相对路径的php代码
2010/08/08 PHP
Laravel中为什么不使用blpop取队列详析
2018/08/01 PHP
PHP使用openssl扩展实现加解密方法示例
2020/02/20 PHP
图片onload事件触发问题解决方法
2011/07/31 Javascript
基于jquery实现漂亮的动态信息提示效果
2011/08/02 Javascript
jquery图片延迟加载 前端开发技能必备系列
2012/06/18 Javascript
BootStrap 实现各种样式的进度条效果
2016/12/07 Javascript
AngularJS $http模块POST请求实现
2017/04/08 Javascript
浅谈vue-lazyload实现的详细过程
2017/08/22 Javascript
JS实现瀑布流布局
2017/10/21 Javascript
完美解决手机浏览器顶部下拉出现网页源或刷新的问题
2017/11/30 Javascript
微信小程序之几种常见的弹框提示信息实现详解
2019/07/11 Javascript
JS/jQuery实现超简单的Table表格添加,删除行功能示例
2019/07/31 jQuery
vue 翻页组件vue-flip-page效果
2020/02/05 Javascript
Python3实现生成随机密码的方法
2014/08/23 Python
python+requests+unittest API接口测试实例(详解)
2017/06/10 Python
python如何去除字符串中不想要的字符
2020/07/05 Python
Python3中编码与解码之Unicode与bytes的讲解
2019/02/28 Python
python,Django实现的淘宝客登录功能示例
2019/06/12 Python
pyqt5实现按钮添加背景图片以及背景图片的切换方法
2019/06/13 Python
python 导入数据及作图的实现
2019/12/03 Python
15行Python代码实现免费发送手机短信推送消息功能
2020/02/27 Python
python画图常规设置方式
2020/03/05 Python
Python爬取YY评级分数并保存数据实现过程解析
2020/06/01 Python
Python自动化操作实现图例绘制
2020/07/09 Python
Python 抓取数据存储到Redis中的操作
2020/07/16 Python
基于python实现监听Rabbitmq系统日志代码示例
2020/11/28 Python
C语言笔试集
2012/07/24 面试题
农业大学毕业生的个人自我评价
2013/10/11 职场文书
初中英语课后反思
2014/04/25 职场文书
教师党的群众路线教育实践活动学习笔记
2014/11/05 职场文书
专职安全员岗位职责
2015/04/11 职场文书
致短跑运动员加油稿
2015/07/21 职场文书
2015年高三毕业班班主任工作总结
2015/10/22 职场文书
五年级语文教学反思
2016/03/03 职场文书
SQL基础的查询语句
2021/11/11 MySQL