提示:为了避免文章过长,代码全托管到码云,直接点超链接就可以看到和下载。
import matplotlib.pyplot as mp
1、mp.plot(x, y, linestyle=线型, linewidth=线宽, color=颜色, …)
功能:将x,y数组对应的值组成坐标上的点依次连接,如果xy都只有一个值,则是一条线段,xy是包含多个值的一维数组,则是很多条线段。
线型: - / – / : / -. / o / o- /
线宽:大于0的数
颜色:十六进制数,如#000000,或者使用表示颜色的单词
颜色表:
2、设置坐标范围
mp.xlim(水平坐标最小值,最大值)
mp.ylim(垂直坐标最小值,最大值)
3、设置坐标刻度
mp.xticks(水平轴刻度位置[, 水平轴刻度文本])
mp.yticks(垂直轴刻度位置[, 垂直轴刻度文本])
4、设置坐标轴属性
ax = mp.gca() # 获取当前坐标轴图
ax.spines[‘left’] 左纵轴
ax.spines[‘right’] 右
ax.spines[‘top’] 上
ax.spines[‘bottom’] 下
轴.set_position((坐标系,位置值)) # 设置位置
轴.set_color(颜色) # 设置轴颜色
比如:ax.spines[‘left’].set_position((‘data’, 0))
5、设置图例
mp.plot(…,label=图例文本)
mp.legend([loc=位置]) 一般不写loc参数,它会自己找合适的位置放上去
- loc = ‘upper left’ 左上 ‘lower right’ 右下 ‘upper center’
- 图例文本含有数学表达式的用相应的转义字符,详情请移步 https://blog.csdn.net/henkekao/article/details/72879393 这个博客
1-5示例代码:plot.py
效果图:
6、画特殊点
mp.scatter(水平坐标数组, 垂直坐标数组, s=大小, marker=点的形状, edgecolor=边缘色, facecolor=填充色,zorder=)
- zorder:用于控制画的顺序,后画的可以覆盖先画的
- edgecolor和facecolor只有当marker是实心的才能显示,maker不写,默认是’o’(圆点)
- 如果只写color属性,则edgecolor和facecolor都是color的值
maker部分值:+,o(空心圆),*,.(实心圆),x(x形),s(正方形),d(菱形),^(上三角),v(下三角),<(左三角),>(右三角),p(五角星),h(六边形)
7、添加说明信息
mp.annotate(说明文本, xy=目标坐标, xycoords=目标坐标系,
xytext=文本坐标, textcoords=文本坐标系, fontsize=字体大小, arrowprops=箭头属性)
- xy:你要说明的文本的坐标
- xycoords: xy是绝对或相对坐标,‘data’或’offset points’
- xytext: 说明文本放的坐标
- arrowprops:值为字典,包含一些属性,常用的有arrowstyle(箭头风格),connectionstyle(连线分格),箭头风格列表和连线风格列表请自行百度。
6-7示例代码:scatter.py
效果图:
8、图形窗口对象
- mp.figure(窗口名,figsize=窗口大小,dpi=分辨率,facecolor=背景色)
功能:将指定窗口名设为当前窗口,如果不存在则创建,用于同时创建几个窗口。 - mp.title(窗口标题,fontsize=字体大小)
- mp.xlabel(水平轴标签,fontsize=字体大小)
- mp.ylabel(垂直轴标签,fontsize=)
- mp.tick_params(labelsize=刻度标签字体大小)
- mp.grid(linestyle=网格线型)
示例代码:figure.py
效果图:
9、子坐标图
1)矩阵布局
mp.subplot(行数,列数,图号)
比如:mp.subplot(2, 2, 1)表示有两行两列四个图的第一个图
mp.subplot(2, 2, 3表示有两行两列四个图的第三个图
示例代码:subplot.py
效果图:
2)栅格布局
import matplotlib.gridspec as mg
gs = mg.Gridspec(行数,列数) # 获取栅格定位器
mp.subplot(栅格定位器[行,列])
示例代码:subplot_2.py
效果图:
3)自由布局
mp.axes([左,底,宽,高]) # 值为对屏幕的占比
示例代码:subplot_3.py
效果图: