解决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 相关文章推荐
Python3遍历目录树实现方法
May 22 Python
python 删除字符串中连续多个空格并保留一个的方法
Dec 22 Python
python爬虫基础教程:requests库(二)代码实例
Apr 09 Python
Python实现word2Vec model过程解析
Dec 16 Python
Python3.x+迅雷x 自动下载高分电影的实现方法
Jan 12 Python
python实现飞机大战游戏(pygame版)
Oct 26 Python
Python TKinter如何自动关闭主窗口
Feb 26 Python
tensorflow使用freeze_graph.py将ckpt转为pb文件的方法
Apr 22 Python
Numpy中np.random.rand()和np.random.randn() 用法和区别详解
Oct 23 Python
Python paramiko使用方法代码汇总
Nov 20 Python
浅谈哪个Python库才最适合做数据可视化
Jun 28 Python
python自动化八大定位元素讲解
Jul 09 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
在php中取得image按钮传递的name值
2006/10/09 PHP
PHP网络操作函数汇总
2015/05/18 PHP
php获取ip及网址的简单方法(必看)
2017/04/01 PHP
表单提交验证类
2006/07/14 Javascript
js文字滚动停顿效果代码
2008/06/28 Javascript
jquery 最简单的属性菜单
2009/10/08 Javascript
真正的JQuery.ajax传递中文参数的解决方法
2011/05/28 Javascript
基于jquery的跟随屏幕滚动代码
2012/07/24 Javascript
JS保留小数点(四舍五入、四舍六入)实现思路及实例
2013/04/25 Javascript
jquery选择器之内容过滤选择器详解
2014/01/27 Javascript
jQuery 文本框得失焦点的简单实例
2014/02/19 Javascript
常用的几段javascript代码分享
2014/03/25 Javascript
js实现带关闭按钮始终显示在网页最底部工具条的方法
2015/03/02 Javascript
基于javascript代码检测访问网页的浏览器呈现引擎、平台、Windows操作系统、移动设备和游戏系统
2015/12/03 Javascript
Javascript实现倒计时(防页面刷新)实例
2016/12/13 Javascript
vuejs响应用户事件(如点击事件)
2017/03/14 Javascript
jquery-file-upload 文件上传带进度条效果
2017/11/21 jQuery
微信小程序上传图片功能(附后端代码)
2020/06/19 Javascript
详解微信小程序开发聊天室—实时聊天,支持图片预览
2019/05/20 Javascript
vue父组件给子组件的组件传值provide inject的方法
2019/10/23 Javascript
vue实现评价星星功能
2020/06/30 Javascript
实现python版本的按任意键继续/退出
2016/09/26 Python
Python读取文件内容的三种常用方式及效率比较
2017/10/07 Python
PyQT实现菜单中的复制,全选和清空的功能的方法
2019/06/17 Python
PyQt5基本控件使用之消息弹出、用户输入、文件对话框的使用方法
2019/08/06 Python
python输入中文的实例方法
2020/09/14 Python
Python特殊属性property原理及使用方法解析
2020/10/09 Python
卡骆驰新加坡官网:Crocs新加坡
2018/06/12 全球购物
大学生党员承诺书
2014/05/20 职场文书
乡镇党员群众路线教育实践活动对照检查材料思想汇报
2014/10/05 职场文书
小学教师师德师风自我评价
2015/03/04 职场文书
撤诉申请书法院范本
2015/05/18 职场文书
小学一年级班主任工作经验交流材料
2015/11/02 职场文书
Keras多线程机制与flask多线程冲突的解决方案
2021/05/28 Python
CentOS安装Nginx并部署vue
2022/04/12 Servers
彻底卸载VMware虚拟机的超详细步骤记录
2022/07/15 Servers