matplotlib库解析
matplotlib 是python最著名的2D绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地进行制图。而且也可以方便地将它作为绘图控件,嵌入GUI应用程序中。通过简单的绘图语句,就可以绘制出高质量的图了。
这里我们就主要讲一下inshow()函数的使用吧。
一、引入matplotlib函数库
如果你使用的是windows平台,大家可以直接下载对应版本的matplotlib库的exe文件安装即可。
使用下面的命令引入matplotlib的pyplot模块:
import matplotlib.pyplot as plt
为方便起见,这样我们就可以用plt来代替matplotlib.pyplot使用了。
二、Figure和Subplot
matplotlib的图像都位于Figure对象中,实际上就是创建了一个空的图像窗口。可以用plt.figure创建一个新的Figure。
fig = plt.figure()
不能通过空Figure绘图,必须用add_subplot()创建一个或多个子sunplot绘图区才能绘图。
ax = fig.add_subplot(221)
意思是:绘制2×2两行两列共4个subplot图像,当前选中第一个。编号从1开始。
得到如下的图像:
三、绘制z = sqrt(x^2+y^2) 的二维函数输出图像
(1)准备数据
我们采用二维数组产生两个二维矩阵,对应于所有的(x,y)对。
要使用数组,我们使用NumPy 模块。
import numpy as np
points = np.arange(-5,5,0.01) #产生1000个-5到5等间隔的点
xs,ys = np.meshgrid(points,points) #np.meshgrid()接受两个一维数组产生两个二维矩阵((x,y)对)。
z = np.sqrt(xs**2+ys**2) #计算z = sqrt(x^2+y^2)的值
(2)绘图
ax = fig.add_subplot(221) #第一个子图
ax.imshow(z) #默认配置
ax = fig.add_subplot(222) #第一个子图
ax.imshow(z,cmap = plt.cm.gray) #第二个子图,使用自定义的colormap(灰度图)
ax = fig.add_subplot(223) #第一个子图
ax.imshow(z,cmap=plt.cm.cool) #第二个子图,使用自定义的colormap
ax = fig.add_subplot(224) #第一个子图
ax.imshow(z,cmap=plt.cm.hot) #第二个子图,使用自定义的colormap
plt.show() #显示图像
于是,漂亮的图像就出来了。
可是,细心的你发现,图的坐标怎么是0-1000呢?是这样的,我们给imshow传入z矩阵是1000×1000的,z的索引其实就是图像的坐标,而其值才是通过图的颜色表现出来的。
matplotlib库解析的更多相关文章
- Python中matplotlib模块解析
用Matplotlib绘制二维图像的最简单方法是: 1. 导入模块 导入matplotlib的子模块 import matplotlib.pyplot as plt import numpy as ...
- [深入浅出Windows 10]QuickCharts图表控件库解析
13.4 QuickCharts图表控件库解析 QuickCharts图表控件是Amcharts公司提供的一个开源的图表控件库,这个控件库支持WPF.Silverlight.和Windows等 ...
- 在Ubuntu 14.04 64bit上安装numpy和matplotlib库
原文:http://blog.csdn.net/tao_627/article/details/44004541 按照这个成功安装! 机器学习是数据挖掘的一种实现形式,在学习<机器学习实战> ...
- 使用QtScript库解析Json数组例子
本文转载自:http://blog.sina.com.cn/s/blog_671732440100uwxh.html 使用qtscipt库解析json数组首先在工程文件中加 QT += ...
- 数据分析与展示——Matplotlib库入门
Matplotlib库入门 Matplotlib库介绍 Matliotlib库是Python优秀的数据可视化第三方库. Matliotlib库的效果见:http://matplotlib.org/ga ...
- 【OCP|052】OCP最新题库解析(052)--小麦苗解答版
[OCP|052]OCP最新题库解析(052)--小麦苗解答版 OCP最新题库解析历史连接(052):http://mp.weixin.qq.com/s/bUgn4-uciSndji_pUbLZfA ...
- matplotlib库的简单应用
matplotlib库 import matplotlib.pyplot as plt import matplotlib matplotlib.rcParams['font.family']='Si ...
- 对matplotlib库的运用
1.matplotlib库的运用效果图 绘制基本的三角函数 ...
- 第二周 数据分析之展示 Matplotlib库入门
Matplotlib库介绍:优秀的数据可视化第三方库 使用:Matplotlib库由各种可视化类构成,内部结构复杂,受Matlab启发,matplotlib.pyplot是绘制各类可视化图形的命令子库 ...
随机推荐
- bash算术求值和errexit陷阱
原文:https://www.technovelty.org//linux/bash-arithmetic-evaluation-and-errexit-trap.html 在 "traps ...
- CallableStatement简单使用
直接上存储过程.函数 --运行不带參数但带返回值的存储过程 CREATE OR REPLACE PROCEDURE proc_getUserCount(v_totalCount OUT NUMBER) ...
- Servlet/Jsp实现购物车
(1)用servlet实现简单的购物车系统,项目结构例如以下:(新建web Project项目 仅仅须要AddItemServlet , ListItemServlet.exam403.jsp三个文 ...
- panel,dialog,window组件越界(超出范围)问题汇总
参考地址 之前分别写过panel,dialog,window三个组件因为拖曳或者reSize造成组件越界而无法还原的问题,两篇文章分别针对拖曳和reSize给出了解决方案.不过根据朋友的反馈,reSi ...
- Android 应用开发实例之文件管理器
2013-07-02 10.2 文件管理器 能够浏览和管理手机/存储卡上的文件和文件夹,包括重命名.删除.新建.复制.粘帖等文件操作. 由于需要浏览大量的文件/文件夹,所以需要使用一个ListView ...
- 【LeetCode】105. Construct Binary Tree from Preorder and Inorder Traversal
Construct Binary Tree from Preorder and Inorder Traversal Given preorder and inorder traversal of a ...
- JAVA编译器常量
编译器常量的特点就是:它的值在编译期就可以确定.比如: final int i = 5; 再傻的编译器也能在编译时看出它的值是5,不需要到运行时.对于运行时常量,它的值虽然在运行时初始化后不再发生变化 ...
- spring in action小结3 运行时值注入
讨论依赖注入的时候,通常讨论的是一个bean引用注入到另一个bean的属性或者构造器参数中.bean装配的另一个方面是将值注入到bean的属性或者构造器参数中.避免硬编码的方式就是运行时确定值. sp ...
- Informix ConnetionString Pool Size
Database=aa;Host=127.0.0.1;Server=ol_svr_custom;Service=9000;Protocol=onsoctcp;UID=informix;Password ...
- atitit,it人怎么样才容易事业成功?? 有以下五种性格的人容易成功
atitit,it人怎么样才容易事业成功?? 有以下五种性格的人容易成功 有以下五种性格的人容易成功 一.不撞南墙不回头的人:由于这种人有脚踏实地,做事拼命.不撞南墙不回头的性格特点, 势有不到黄河心 ...