python画图:matplotlib(1)

来源:互联网 发布:免费远程培训软件 编辑:程序博客网 时间:2024/06/06 11:49

python matplotlib

matplotlibpython中用来绘图的一个库,提供非常强大的绘图功能。

安装

pip install matplotlib pillow

面向对象风格

首先要理解两个对象,一个是Figure,一个是AxesSubplot,Figure是一个窗口,他是AxesSubplot的容器,真正的绘图要在AxesSubplot上进行。

import matplotlib.pyplot as plt#如何看待plt呢,我觉着plt是一个包含fig的容器fig = plt.figure() #创建Figure对象axes1 = fig.add_subplot(2,2,1) #在fig中创建axes,用来画图#参数的意思是,在fig中创建了2行2列的axes,将第一个axes返回axes2 = fig.add_subplot(2,2,2) #将第二个返回#使用axes绘图axe1.hist(randn(100), bins=20, color='k', alpha=0.3)axe2.hist(randn(100), bins=20, color='k', alpha=0.3)#显示,最后一定要加个plt.show(),不然不会显示plt.show()

一个更加简单创建fig和axes的方法

#创建一个2*3个axes的fig图像,并返回。axes是一个2*3的对象数组fig, axes = plt.subplots(2,3)......plt.show()

面向过程风格

一个plt吃遍天

import matplotlib.pyplot as plt#可以直接使用plt绘图.plt.hist(randn(100), bins=20, color='k', alpha=0.3)#多个axesfig = plt.figure()axes1 = fig.add_subplot(2,2,1)axes2 = fig.add_subplot(2,2,1)plt.sca(axes1)#设定当前的axesplt.hist(...) #在当前axes上绘图plt.sca(axes2)#plt.hist(...)# 在axes2上绘图plt.show()

可以看出,面向过程就是通过plt设置当前的axes,然后,用plt在当前axes上画图

axes

axes对象都有拥有几个函数:axes.xlabel("...") #x轴 labelaxes.ylabel("...") #y轴 labelaxes.title("...")  #axes的titleaxes.xlim(start, end)axes.ylim(start, end)
0 0
原创粉丝点击