简介
Matplotlib 库受 Matlab启发,由各种可视化类构成,内部结构复杂。其中 matplotlib.pyplot 是绘制各类可视化图形的命令子库,相当于快捷方式
matplotlib.pyplot
基础设置
matplotlib.pyplot.plot(x, y, format_string, **kwargs)
- x:X轴数据,列表或数组,可选(绘制多条曲线时,各条曲线的 x 不能省略)
- y:Y轴数据,列表或数组
- format_string:控制曲线的格式字符串,可选。由颜色字符、风格字符和标记字符组成
- **kwargs:第二组或更多的(x, y, format_string)参数,也可以是其他参数,如
- color:控制颜色,color=‘green’
- linestyle:线条风格,linestyle=‘dashed’
- marker:标记风格,marker=‘o’
- markerfacecolor:标记颜色,markerfacecolor=‘blue’
- markersize:标记尺寸,markersize=20
- …
import numpy as np
import matplotlib.pyplot as plt
a = np.arrange(10)
plt.plot(a, a*1, a, a*2, a, a*3) # 在同一幅图中画多条曲线
图表文本设置
文本显示函数
- matplotblid.pyplot.xlabel(str, **kwargs):对 X 轴增加文本标签
- matplotblid.pyplot.ylabel(str, **kwargs):对 Y 轴增加文本标签
- matplotblid.pyplot.titile(str, **kwargs):对图形整体增加文本标签
- matplotblid.pyplot.text(x, y, str, **kwargs):在(x, y)坐标处增加文本
- matplotblid.pyplot.annotate(str, xy, xytext, arrowprops):在图形中增加带箭头的注解。如 plt.annotate(r$\mu=100’, xy=(2,1), xytext=(3,1.5), arrowprops=dict(facecolor=‘black’, shrink=0.1, width=2))
pyplot中文显示
import matplotblid.pyplot as plt
import matplotblid
# 1. 修改 rcParams
# rcParams 属性:
# 'font.family':用于显示字体的名字。其中,'SimHei'黑体、'Kaiti'楷体、'LiSu'隶书、'FangSong'仿宋、'YouYuan'幼圆、'STSong'宋体
# 'font.style':字体风格,正常'normal'或斜体'italic'
# 'font.size':字体大小,整数字号或者'large'、'x-small'
matplotblid.rcParams['font.family']='SimHei'
# 2. 在输出位置增加属性 fontproperties
plt.xlabel('横轴:时间', fontproperties='SimHei', fontsize=20)
plt.ylabel('纵轴:振幅', fontproperties='SimHei', fontsize=20)
图表区域设置
matplotblid.pyplot.subplot2grid(GridSpec, CurSpec, colspan=1, rowspan=1):其思路是设定网格,选中网格,确定选中行列区域数量, 编号从0开始
不同类型图表设置
基础图表函数
- matplotblid.pyplot.plot(x, y, fmt):绘制坐标图
- matplotblid.pyplot.boxplot(data, notch, position):绘制箱形图
- matplotblid.pyplot.bar(left, height, width, bottom):绘制条形图
- matplotblid.pyplot.barh(width, bottom, left, height):绘制横向条形图
- matplotblid.pyplot.polar(theta, r):绘制极坐标图
- matplotblid.pyplot.pie(data, explode):绘制饼图
- matplotblid.pyplot.psd(x, NFFT=256, pad_to, Fs):绘制功率谱密度图
- matplotblid.pyplot.specgram(x, NFFT=256, pad_to, F):绘制谱图
- matplotblid.pyplot.cohere(x, y, NFFT=256, Fs):绘制X-Y的相关性函数
- matplotblid.pyplot.scatter(x, y):绘制散点图,其中 x 和 y 长度相同
- matplotblid.pyplot.step(x, y, where):绘制步阶图
- matplotblid.pyplot.hist(x, bins, normed):绘制直方图
- matplotblid.pyplot.contour(X, Y, Z, N):绘制等值图
- matplotblid.pyplot.vlines():绘制垂直图
- matplotblid.pyplot.stem(x, y, linefmt, markerfmt):绘制柴火图
- matplotblid.pyplot.plot_date():绘制数据日期