文章目录

  • 简介
  • matplotlib.pyplot库解析
  • 简单实例


简介

matplotlib库是提供数据绘图功能的第三方库。其中有名为matplotlib.pyplot的子库,主要用作实现各种数据展示图形的绘制。
引用方式如下所示:

import matplotlib.pyplot as plt

在数据可视化图中,中文字体需要更改字体的默认设置,如下面代码所示

plt.rcParams['font.family']='SimHei'
plt.rcParams['font.sans-serif']=['SimHei']

上面的“simhei”表示的是黑体字,其他常用的中文字体将会在下表列出:

字体名

表示方法

宋体

SimSun

黑体

SimHei

楷体

KaiTi

微软雅黑

Microsoft YaHei

隶书

LiSu

仿宋

FangSong

幼圆

YouYuan

华文宋体

STSong

华文黑体

STHeiti

苹果丽中黑

Apple LiGothic Medium

matplotlib.pyplot库解析

在接下来的文章中,我们简称matplotlib库为plt库,plt子库提供了一批操作和绘图函数,每个函数代表对图像进行的一个操作,例如创建绘图区域,添加标注或者修改坐标轴等。这些函数采用plt.<b>()形式调用,其中<b>是具体函数名。
下表是几个与绘图区域有关的函数:

plt.figure(figsize=None,facecolor=None)

创建一个全局绘图区域

plt.axes(rect)

创建一个坐标系风格的子绘图区域,但是现在已经没有axisbg属性 ,使用facecolor代替

plt.subplot(nrows,nclos,plot_number)

在全局绘图区域中创建一个子绘图区域

plt.subplot_adjust()

调整子绘图区域布局

下面是一些简单实例

python matplotlib 怎么在点上标记Y值 matplotlib中用于标注文字的函数_数据挖掘


python matplotlib 怎么在点上标记Y值 matplotlib中用于标注文字的函数_python_02


我们也能够改变子绘图区域的背景颜色:

python matplotlib 怎么在点上标记Y值 matplotlib中用于标注文字的函数_数据分析_03


python matplotlib 怎么在点上标记Y值 matplotlib中用于标注文字的函数_开发语言_04

简单实例

让我们通过一个基本三角函数的绘制来初识plt库:

import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0,6,100)
y = np.cos(2*np.pi*x)*np.exp(-x)+0.8
plt.plot(x,y,'k',color='r',linewidth=3,linestyle="-")
plt.show()

python matplotlib 怎么在点上标记Y值 matplotlib中用于标注文字的函数_python_05


对上述实例稍作修改,可以得到一个带局部阴影的坐标系,plt库提供了3个区域填充函数:

函数

描述

fill(x,y,c,color)

填充多边形

fill_between(x,y1,y2,where,color)

填充两条曲线围成的多边形

fill_between(y,x1,x2,where,hold)

填充两条水平线之间的区域

我们接下来就在上述的例子中使用这三个函数之一,下面是代码实例:

import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0,10,1000)
y = np.cos(2*np.pi*x)*np.exp(-x)+0.8
plt.plot(x,y,'k',color='r',label="$exp-decay$",linewidth=3,linestyle="-")
plt.axis([0,6,0,1.8])
ix = (x>0.8)&(x<3)
plt.fill_between(x,y,0,where = ix,facecolor='grey',alpha=0.25)
plt.text(0.5*(0.8+3),0.2,r"$\int_a^b f(x)\mathrm{d}x$",horizontalalignment='center')
plt.legend()
plt.show()

python matplotlib 怎么在点上标记Y值 matplotlib中用于标注文字的函数_开发语言_06