Matplotlib_入门基本操作

绘图是数据分析中最重要的任务之一,而matplotlib 作为python 绘图的标准库,可以作出几乎所有你想要的图形。

1. 绘制一个简单的图形

首先,在绘制图形之前,我们需要导入两个基本模块,即 matplotlib.pyplot 和numpy,接着我们使用 numpy 作出 x 轴与 y 轴,最后就可以绘图了,代码如下:

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(-np.pi,np.pi,0.01)
y = np.sin(x)
plt.plot(x, y)
plt.show()

2. 图表元素基础操作

基本参数设置如下

  • color = 'r'c = 'r'---颜色
  • linestyle = '--'---线条类型
  • linewidth = 1.0---线条粗细
  • label = 'x'---标签
  • marker = '*'---数据点显示 *
  • plt.xlabel()---x 轴标题
  • plt.ylabel()---y 轴标题
  • plt.title()---图形标题
  • plt.xticks()---设置x轴刻度位置,以及旋转角度(rotation)和字大小(fontsize='small'/'medium'/'large'
  • plt.xticklabels---设置x轴刻度标签,也可理解是为刻度重新赋值,同样可设置标签旋转角度及字体大小(同xticks)
  • plt.legend()---图例
  • plt.grid(Ture)---添加网格,也可设置网格颜色,网格线条粗细和类型(同上)
  • plt.xlim(xmin,xmax)---x轴变化范围
  • plt.ylim(ymin,ymax)---y轴变化范围
  • plt.axis([xmin,xmax,ymin,ymax])---同时设置x,y轴范围,但必须加 []
  • plt.savefig('文件名',dpi=200,bbox_inches = 'tight')----dpi ☞像素,默认100;bbox_inches ☞要保存图片的范围,传递'tight',将会去除掉图片的周围空白部分
    例如:
x1 = np.linspace(-np.pi,np.pi,1000)
x2 = np.arange(-4,5)
y1 = np.sin(x1)
y2 = 0.1 * x2 - 0.2

plt.plot(x1,y1,'r--',label = 'y1',linewidth = 1.5)
plt.plot(x2,y2, 'b-',marker = '*',label = 'y2')

plt.axis([-np.pi, np.pi, -1, 1])

plt.xlabel('x')
plt.ylabel('$sin(x)$')
plt.title('Example')
plt.legend()

3.图片与子图

在对数据绘图过程中,不可避免的我们会经常将一组数据绘制不同维度的图形,并会放在一起进行对比,因此涉及到子图的问题。在python中,建立子图通常有两种方式

  • 第一种:
fig = plt.figure()
ax1 = fig.add_subplot(2,2,1)
ax2 = fig.add_subplot(2,2,2)
ax3 = fig.add_subplot(2,2,3)
  • 第二种
fig, axes = plt.subplots(2,2)
ax1,ax2,ax3,ax4 = axes.flatten()
#因为生成的 axes 是一个二维数组,因此可以像二维数组那样方便的进行索引
axes[0,0]  #第一个子图
axes[1,1]  #第四个子图

你可能感兴趣的:(Matplotlib_入门基本操作)