数据可视化一
Matplotlib初相识
自以为自己基础还不错,再学习一遍是为了复习,强化系统的认识
认识matplotlib
- python 2D绘图库
- 可绘制静态、动态、交互式图表
导入包
- 导入包
import matplotlib.pyplot as plt
import numpy as np
Figure
一个figure包含四个层级或者容器,分别通过不同命令方法来操纵图像中的每一个部分,从而达到数据可视化的最终效果,一副完整的图像实际上是各类层级元素的集合。
- Figure:顶层级,包含所有绘图元素
- Axes:核心,用来构造子图,一个figure可由多个子图构成
- Axis:axes下层属性,处理所有和坐标轴,网格有关的元素
- Tick:axis下属层级,用来处理所有和刻度有关的元素
图像的形象化命令如图所示
两种绘图接口
matplotlib提供了两种常用绘图接口
- 显式创建figure和axes,并调用绘图方法,面向对象fengge
- 依据pyplot函数库创建figure和axes,绘图,面向过程风格
绘制同一幅图的两种实现形式如下
#面向对象风格
x = np.linspace(0, 2, 100)
fig, ax = plt.subplots()
ax.plot(x, x, label='linear')
ax.plot(x, x**2, label='quadratic')
ax.plot(x, x**3, label='cubic')
ax.set_xlabel('x label')
ax.set_ylabel('y label')
ax.set_title("Simple Plot")
ax.legend()
#面向过程风格
x = np.linspace(0, 2, 100)
plt.plot(x, x, label='linear')
plt.plot(x, x**2, label='quadratic')
plt.plot(x, x**3, label='cubic')
plt.xlabel('x label')
plt.ylabel('y label')
plt.title("Simple Plot")
plt.legend()
效果如图
参考资料:
链接: matplotlib官方文档.
作业
你在工作或学习中通常何时会用到数据可视化,希望通过可视化达到什么目的?
- 绘制概率分布图
- 尽可能熟悉多种绘图方式