py科学绘图库matplotlib详细教程

前言

Matplotlib是一个可以绘制2D数据图形的python库,利用它可以绘制出各种各样的数据图表。

安装

linux or mac

命令行键入

sudo pip install matplotlib

win

要管理员权限

pip install matplotlib

推荐下载Anaconda,一个python的拓展包,包含了195个关于科学,数学,工程,数据分析的py库,安装一个就可以解决大部分库安装的问题。里面还包括了IPython和Spyder。

运行环境

这一节可以跳过

既然是绘图库,肯定有图片,可是命令行大部分不支持显示图片,所以要用到外部扩展命令行或程序。

下面说四种方法来显示图片:

1.保存成图片,用图片浏览器打开

这个方法在调试时最不好用,不过在批量生成图片时,可以批量保存用。

savefig 函数,这个以后细说。

2.用matplotlib自带的图片预览器

它自带了一个图片查看器,如果当前命令行不支持图片展示的话,会自动启动这个预览器。

缺点就是每一次都要手动关闭

3.用IPython显示图片

Ipython是一个python命令行扩展。提供一个交互环境,来调试py程序,基本上就像Mathematical一样,重点是它支持直接在命令行里显示图片,就像这样:

4.Spyder

Spyder是一个python的IDE,主要用来做科学计算的,界面类似于MATLAB,直接上图:

正文

废话扯完了,开始正文了。

基本绘图

这一节来画最简单的这个:

分析:

上图是由一条正弦曲线和余弦曲线组成,所以要获取曲线数据才能绘制。

代码:

# -*- coding: utf-8 -*-
#载入pylab
from pylab import *
#用numpy生成X轴数据
X = np.linspace(-np.pi, np.pi, 256,endpoint=True)
#用numpy根据numpy生成sin,cos数据
C,S = np.cos(X), np.sin(X)

#根据数据绘制
plot(X,C)
plot(X,S)

#显示图片,如果在命令行模式,会弹出图片预览窗口,
#IPython下,直接在命令行展示图片
show()

本文是用python2.7。

pylab提供了一个针对matplotlib面向对象绘图库的程序界面。它模仿Matlab(TM)开发。

运行

无视这一小节

  • 打开ipython,直接复制粘贴上面的代码,按回车,就可以看到图片了,如果提示找不到库,用sudo pip install +对应包名就可以了,如果还不行,去问度娘。
  • 打开Spyder新建项目,在项目里新建一个py文件,将代码复制粘贴进去,在编辑器的右方或下方的控制台部分,选择IPython console,按F5运行,就可以在IPython console里看到图片了。

Numpy

Numpy是一个用来科学计算的库,为Python提供了任意维数的数组对象(ndarray,n-dimensional array object)还有通用函数对象(ufunc,universal function object)。

Python中提供了list容器,可以当作数组使用。但列表中的元素可以是任何对象,因此列表中保存的是对象的指针,这样一来,为了保存一个简单的列表[1,2,3]。就需要三个指针和三个整数对象。对于数值运算来说,这种结构显然不够高效。

Python虽然也提供了array模块,但其只支持一维数组,不支持多维数组,也没有各种运算函数。因而不适合数值运算。

而NumPy的出现弥补了这些不足。(——摘自张若愚的《Python科学计算》)

上面绘制正余弦函数图像时,就用到了numpy来生成数据,C,S = np.cos(X), np.sin(X),这时,C、S就是numpy数组对象。

我们要绘图,就得把数据转换成数组对象

numpy数组简单教程

点击每一个函数名,可直接跳转到文档

  • 数组里每一个数据的类型都相同
  • 由实际所持有的数据和描述这些数据的元数据(metadata)组成
  • 生成数组
  • 数组方法

未完待续

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-16 20:36:29

py科学绘图库matplotlib详细教程的相关文章

『python』科学计算专项_科学绘图库matplotlib学习之绘制动画(待续)

示例代码 简单调用绘图 from matplotlib import pyplot as plt import matplotlib.animation as animation import numpy as np def update_point(num): fig_points.set_data(data[:, 0:num]) return fig_points, fig1 = plt.figure() num_point = 50 data = np.random.rand(2, num

『python』科学计算专项_科学绘图库matplotlib学习

思想:万物皆对象 作业 第一题: import numpy as np import matplotlib.pyplot as plt x = [1, 2, 3, 1] y = [1, 3, 0, 1] def plot_picture(x, y): plt.plot(x, y, color='r', linewidth='2', linestyle='--', marker='D', label='one') plt.xticks(list(range(-5,5,1))) plt.yticks

『python』科学计算专项_科学绘图库matplotlib学习(下)

基本的读取csv文件并绘制饼图 由于之前没有过实际处理的经验,所以这个程序还是值得一看,涉及了处理表格数据的基本方法: import matplotlib.pyplot as plt import pandas as pd # csv读取文件 data = pd.read_csv('OutOrder.csv',encoding='gb2312') # 每一列都兼容numpy的方法 a = data['方式'].values # 获取本列的内容的各种可能 typename = [] for i i

Python:2D绘图库matplotlib学习总结

本文为学习笔记----总结!大部分为demo,一部分为学习中遇到的问题总结,包括怎么设置标签为中文等.matlab博大精深,需要用的时候再继续吧. Pyplot tutorial Demo地址为:点击打开链接 一个简单的例子: # -*- coding: utf-8 -*- import matplotlib.pyplot as plt plt.plot([1, 4, 9, 16]) plt.ylabel('some numbers') plt.show() 运行结果为: 我只指定了一组list

Python3绘图库Matplotlib(02)

控制颜色 Color Color Name b blue c cyan g green k black m magenta r red w white y yellow plt.plot(x1, y1, fmt1, x2, y2, fmt2, ...) 控制线的风格 Style Style - solid line -- dashed line -. dash-dot line : dotted line 控制标记样式 . Point marker , Pixel marker o Circle

windows环境下,用python绘图库matplotlib绘图时中文乱码问题

1.下载中文字体(看自己爱好就行)下面这个举例: SimHei - Free Font Download?www.fontpalace.co 2.下载之后,打开即可安装,将字体安装进windows系统 3.找到你的matplotlib字体文件夹,例如:python3\Lib\site-packages\matplotlib\mpl-data\fonts,将SimHei.ttf拷贝到fonts下的ttf文件夹下面 如果自己找不到,就使用如下代码,可以得到配置文件matplotlibrc地址,用文本

Python绘图库Turtle详细分析

Turtle库是Python语言中一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x.纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行的路径上绘制了图形. turtle绘图的基础知识 画布(canvas) 画布就是turtle为我们展开用于绘图区域,我们可以设置它的大小和初始位置. 设置画布大小 turtle.screensize(canvwidth=None, canvheight=None, bg=None),参数分别为画布的

Python图表绘制:matplotlib绘图库入门

matplotlib 是python最著名的绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地行制图.而且也可以方便地将它作为绘图控件,嵌入GUI应用程序中. 它的文档相当完备,并且Gallery页面中有上百幅缩略图,打开之后都有源程序.因此如果你需要绘制某种类型的图,只需要在这个页面中浏览/复制/粘贴一下,基本上都能搞定. 在Linux下比较著名的数据图工具还有gnuplot,这个是免费的,Python有一个包可以调用gnuplot,但是语法比较不习惯,而且画图质量不高.

Python Matplotlib绘图库 安装

一般我们在做科学计算的时候,首先会想到的是matlab,但是呢,一想到matlab安装包那么大,我就有点不想说什么了. Matplotlib 是python最著名的绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地 进行制图.Matplotlib的安装可以参见 官网链接 http://matplotlib.org/users/installing.html 安装过程大致参考了http://blog.csdn.net/daniel_ustc/article/details/97