13,Matplotlib面向对象绘图

〇,Matplotlib简介

Matplotlib是Python数据分析中用于数据可视化的最著名的一个库,其绘图方式和matlab中的绘图方式非常相似。

通常使用Matplotlib绘图有两种不同的方式:面向对象绘图和函数式绘图。此外也可以dataframe的plot函数快速绘图。它们的特点如下。

1,面向对象绘图方案(ax.plot)结构清晰,功能齐全,容易理解。【推荐】

2,函数式绘图方案 ( plt.plot)代码较简短,但容易迷失操作对象,造成混乱。

3,dataframe快速绘图方案(df.plot)能够将数据分析和可视化过程很好地衔接起来。【强烈推荐】

本节我们介绍面向对象绘图方案。

一,Matplotlib中图像的结构

matplotlib图像中最重要的三个对象分别是 figure (画布),ax (坐标系),axis (坐标轴)。一个figure中可以有多个 ax(多个子图),figure可以设置图像的尺寸,背景色,像素等。一个ax中一般有多个 axis,如xaxis,yaxis。ax可以设置子图的大小,标题,数据的呈现形式,线型,颜色等。axis又有label,tick等对象,可以设置坐标轴刻度,坐标轴标签,坐标轴标题等。

二,Matplotlib面向对象绘图一般步骤

面向对象绘图一般自上而下:

0,绘图前设置绘图风格等全局参数,例如style,font等。

1,开始绘图时,首先是figure对象布局,包括大小size,像素dpi等。

2, 接着是axes对象规划,包括图形(如点线柱饼),axes区域(如背景颜色,栅格,图例)等。

3,然后是axis对象设置,包括坐标轴,刻度线,标签等。

4,最后是添加文字信息,包括标题,数据标注,其他文字说明等。

三,面向对象绘图示范

0,绘图前设置绘图风格等全局参数,例如style,font等。

1,开始绘图时,首先是figure对象布局,包括大小figsize,像素dpi等。

2,接着是axes对象规划,包括图形(如点线柱饼),axes区域(如背景颜色,栅格,图例)等。

3,然后是axis对象设置,包括坐标轴,刻度线,标签等。

4,最后是添加文字信息,包括标题,数据标注,其他文字说明等。

(注:以上代码应当在同一个 Jupyter notebook的 cell中执行。)

效果图如下:

Python与算法之美

(Python_Ai_Road)

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180722G0PVML00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券