解决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实现批量转换文件编码的方法
Jul 28 Python
python 默认参数问题的陷阱
Feb 29 Python
Python入门_浅谈逻辑判断与运算符
May 16 Python
解决python文件字符串转列表时遇到空行的问题
Jul 09 Python
Mac中Python 3环境下安装scrapy的方法教程
Oct 26 Python
解决python3中自定义wsgi函数,make_server函数报错的问题
Nov 21 Python
python+pyqt5实现KFC点餐收银系统
Jan 24 Python
Django用户认证系统 组与权限解析
Aug 02 Python
通过 Python 和 OpenCV 实现目标数量监控
Jan 05 Python
python 对任意数据和曲线进行拟合并求出函数表达式的三种解决方案
Feb 18 Python
python爬虫泛滥的解决方法详解
Nov 25 Python
Python实现数据的序列化操作详解
Jul 07 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
人大复印资料处理程序_输入篇
2006/10/09 PHP
php的日期处理函数及uchome的function_coomon中日期处理函数的研究
2011/01/12 PHP
PHP file_exists问题杂谈
2012/05/07 PHP
Ajax+PHP实现的分类列表框功能示例
2019/02/11 PHP
PHP基于openssl实现非对称加密代码实例
2020/06/19 PHP
《JavaScript DOM 编程艺术》读书笔记之JavaScript 语法
2015/01/09 Javascript
JavaScript函数的调用以及参数传递
2015/10/21 Javascript
学习javascript面向对象 实例讲解面向对象选项卡
2016/01/04 Javascript
js return返回多个值,通过对象的属性访问方法
2017/02/21 Javascript
js学习总结之DOM2兼容处理重复问题的解决方法
2017/07/27 Javascript
js设置随机切换背景图片的简单实例
2017/11/12 Javascript
swiper 自动图片无限轮播实现代码
2018/05/21 Javascript
使用vue-router为每个路由配置各自的title
2018/07/30 Javascript
解决webpack+Vue引入iView找不到字体文件的问题
2018/09/28 Javascript
基于Koa2写个脚手架模拟接口服务的方法
2018/11/27 Javascript
Javascript的this详解
2019/03/23 Javascript
js+canvas实现简单扫雷小游戏
2021/01/22 Javascript
JS面向对象编程实现的Tab选项卡案例详解
2020/03/03 Javascript
js中位数不足自动补位扩展padLeft、padRight实现代码
2020/04/06 Javascript
JavaScript实现点击出现子菜单效果
2021/02/08 Javascript
详解python中的文件与目录操作
2017/07/11 Python
python paramiko模块学习分享
2017/08/23 Python
Python实现简单的语音识别系统
2017/12/13 Python
Pycharm 操作Django Model的简单运用方法
2018/05/23 Python
scrapy-redis的安装部署步骤讲解
2019/02/27 Python
PyTorch中的padding(边缘填充)操作方式
2020/01/03 Python
简单了解django文件下载方式
2020/02/10 Python
解决Pymongo insert时会自动添加_id的问题
2020/12/05 Python
css3+jq创作含苞待放的荷花
2014/02/20 HTML / CSS
医学生自我鉴定范文
2013/11/08 职场文书
学雷锋演讲稿
2014/03/04 职场文书
小学教师先进事迹材料
2014/12/15 职场文书
迎新年主持词
2015/07/06 职场文书
小学三年级作文之写景
2019/11/05 职场文书
python如何查找列表中元素的位置
2022/05/30 Python
win7配置本地ftp服务器的图文教程
2022/08/05 Servers