Python之matplotlib学习(一)
小试牛刀
在上一节已经安装好matplotlib模块,下面使用几个例子熟悉一下。
对应的一些文档说明:
http://matplotlib.org/1.3.1/api/pyplot_summary.html
例子1:二维坐标——整数
[root@typhoeus79 20131113]# ipython
In [1]: import matplotlib.pyplot as plt In [2]: x = range(6) In [3]: plt.plot(x,[xi*xi for xi in x])
Out[3]: [<matplotlib.lines.Line2D at 0x1cf4050>] In [4]: plt.savefig('test1.png')
输出结果:

上图的例子可以看到直线不平滑,原因在于样本点太少的缘故。
例子2:二维坐标——浮点数
[root@typhoeus79 20131113]# ipython
In [1]: import matplotlib.pyplot as plt
In [2]: import numpy as np
In [3]: x = np.arange(0.0,6.0,0.1)
In [4]: plt.plot(x,[xi * xi for xi in x])
Out[4]: [<matplotlib.lines.Line2D at 0x1cf1f10>]
In [5]: plt.savefig('test2.png')
range以及xrange是python中有的,而arange是numpy特有的。
输出结果:

例子3:二维坐标——多个曲线
[root@typhoeus79 20131113]# ipython
In [1]: import matplotlib.pyplot as plt
In [2]: import numpy as np
In [4]: x = range(5)
In [5]: x
Out[5]: [0, 1, 2, 3, 4]
In [6]: plt.plot(x,[xi * 1.5 for xi in x])
Out[6]: [<matplotlib.lines.Line2D at 0x1cf2c50>]
In [7]: plt.plot(x,[xi * 3.0 for xi in x])
Out[7]: [<matplotlib.lines.Line2D at 0x1cf2ed0>]
In [8]: plt.plot(x,[xi / 3.0 for xi in x])
Out[8]: [<matplotlib.lines.Line2D at 0x1cf5590>]
In [9]: plt.savefig('test3.png')
输出结果:

例子4:二维坐标——多个曲线,改进版本
In [1]: import matplotlib.pyplot as plt
In [2]: import numpy as np
In [3]: x = range(1,5)
In [4]: plt.plot(x,[xi * 1.5 for xi in x],x,[xi * 3.0 for xi in x],x,[xi / 3.0 for xi in x])
Out[4]:
[<matplotlib.lines.Line2D at 0x1cf3150>,
<matplotlib.lines.Line2D at 0x1cf33d0>,
<matplotlib.lines.Line2D at 0x1cf3a90>] In [5]: plt.savefig('test4.png')
多个数据使用一个plot进行输出
例子5:二维坐标——多个曲线,使用numpy进行改进
In [1]: import matplotlib.pyplot as plt
In [2]: import numpy as np
In [3]: x = np.arange(1,5) In [4]: plt.plot(x,x*1.5,x,x*3.0,x,x/3.0)
Out[4]:
[<matplotlib.lines.Line2D at 0x1cf1fd0>,
<matplotlib.lines.Line2D at 0x1cf4290>,
<matplotlib.lines.Line2D at 0x1cf4950>] In [5]: plt.savefig('test5.png')
《Getting Started with Matplotlib》
Python之matplotlib学习(一)的更多相关文章
- Python之matplotlib学习(四)
例子12:ipython使用--pylab参数,默认加入matplotlib模块 [root@typhoeus79 guosong]# ipython --pylab WARNING: IPython ...
- Python之matplotlib学习(三)
例子11-1:横坐标时间的处理 from matplotlib.dates import datestr2num,DateFormatter import matplotlib.dates as da ...
- Python之matplotlib学习(二)
例子6.中文标签测试 #!/usr/bin/env python2.7 #-*- coding:utf-8 -*- import matplotlib.pyplot as plt import num ...
- Python:2D画图库matplotlib学习总结
本文为学习笔记----总结!大部分为demo.一部分为学习中遇到的问题总结.包含怎么设置标签为中文等.matlab博大精深.须要用的时候再继续吧. Pyplot tutorial Demo地址为:点击 ...
- 常用统计分析python包开源学习代码 numpy pandas matplotlib
常用统计分析python包开源学习代码 numpy pandas matplotlib 待办 https://github.com/zmzhouXJTU/Python-Data-Analysis
- Comprehensive learning path – Data Science in Python深入学习路径-使用python数据中学习
http://blog.csdn.net/pipisorry/article/details/44245575 关于怎么学习python,并将python用于数据科学.数据分析.机器学习中的一篇非常好 ...
- Matplotlib学习笔记(二)
原 Matplotlib学习笔记 参考:Python数据科学入门教程 Python3.6.1 jupyter notebook .caret, .dropup > .btn > .car ...
- Matplotlib学习笔记(一)
原 matplotlib学习笔记 参考:Python数据科学入门教程 Python3.6.1 jupyter notebook .caret, .dropup > .btn > .ca ...
- Matplotlib学习---用matplotlib画箱线图(boxplot)
箱线图通过数据的四分位数来展示数据的分布情况.例如:数据的中心位置,数据间的离散程度,是否有异常值等. 把数据从小到大进行排列并等分成四份,第一分位数(Q1),第二分位数(Q2)和第三分位数(Q3)分 ...
随机推荐
- ASP.NET没有魔法——ASP.NET与数据库
在之前的文章中介绍了使用ASP.NET MVC来开发一个博客系统,并且已将初具雏形,可以查看文章列表页面,也可以点击文章列表的其中一篇文章查看详情,这已经完成了最开始需求分析的读者的查看列表和查看文章 ...
- python重试(指数退避算法)
本文实现了一个重试的装饰器,并且使用了指数退避算法.指数退避算法实现还是很简单的.先上代码再详细解释. 1.指数退避算法 欠奉.http://hugnew.com/?p=814 2.重试装饰器retr ...
- canvas图表详解系列(2):折线图
本章建议学习时间4小时 学习方式:详细阅读,并手动实现相关代码(如果没有canvas基础,需要先学习前面的canvas基础笔记) 学习目标:此教程将教会大家如何使用canvas绘制各种图表,详细分解步 ...
- Bootstrap表格样式(附源码文件)--Bootstrap
1.表格默认样式 <h4>表格默认样式</h4><table><!--默认样式--> <tr><th>序号</th> ...
- 吾八哥学Python(六):运算符与表达式
上篇简单学习了数学运算符,今天来学习下完整的Python运算符与表达式,具体看下面的表格吧! 表1 运算符与它们的用法 运算符 名称 说明 例子 + 加 两个对象相加 3 + 5得到8.’a’ + ‘ ...
- .net Mvc框架原理
.net Mvc框架原理 本文只是简要说明原理,学习后的总结. 1.当一个Http请求发送后会被URLRoutingModule拦截(这时候也就是正式进入管道,下章会讲管道事件) 2.这时根据Isap ...
- Linux入门(4)——Ubuntu16.04安装MATLAB2016b
通常有三个安装文件: Matlab 2016b Linux64 Crack.rar R2016b_glnxa64_dvd1.iso R2016b_glnxa64_dvd2.iso sudo apt i ...
- svn的简介
Svn(Subversion)是近年来崛起的版本管理工具,在当前的开源项目里(J2EE),几乎95%以上的项目都用到了SVN.Subversion项目的初衷是为了替换当年开源社区最为流行的版本控制软件 ...
- Java基础总结--泛型总结
-----泛型------JDK1.5出现的机制1.泛型出现的原因--简化书写,提高安全性技术的由来是为了解决问题,现在存在该问题,所有的容器定义类型为Object,所以任何对 象均可以放入容器--进 ...
- 聊聊Java中的反射(一)
本文为作者原创,转载请注明出处(http://www.cnblogs.com/mar-q/)by 负赑屃 反射reflection主要为了动态操作Java代码,它的主要功能体现在Java提供的refl ...