0.导入模块
import matplotlib.pyplot as plt
1.画图
1.1 创建一张新画布
figsize的尺寸×100即为所作画布的像素尺寸
eg:figsize=(3,3)像素尺寸即为(300,300)
fig = plt.figure(figsize=(3,3))
1.2 在画布上添加图像内容
add_axes(rect, projection,frameon)
1.2.1 选定画像位置
rect四个参数,范围(0,1),对应新图像的尺寸[左,下,宽,高]
第一个参数:图像按比例在画布左侧开始位置
第二个参数:图像按比例在画布下侧开始位置
第三个参数:图像宽按比例缩放新的尺寸
第四个参数:图像高按比例缩放新的尺寸
ax = fig.add_axes([0, 0, 1, 1])
1.2.2 projection画像的形状:‘aitoff’,‘hammer’,‘lambert’,‘mollweide’,‘polar’,rectilinear默认None
ax = fig.add_axes(rect=[0, 0, 1, 1],projection='polar') # 圆形
1.2.3 frameon是否隐藏边框,False为隐藏
ax = fig.add_axes(rect=[0, 0, 1, 1],frameon=False)
1.2.4 画多个画像,用label区分
fig.add_axes(rect=[0, 0, 0.5, 0.5],label='axes1')
fig.add_axes(rect=[0.5, 0, 0.5, 0.5],label='axes2')
- 隐藏坐标
ax.get_xaxis().set_visible(False)
ax.get_yaxis().set_visible(False)
3.设置坐标刻度
列表里为数组,对应刻度点坐标,可为空
ax.set_xticks([])
ax.set_yticks([])
1.3在图像上增加文本
1.3.1
plt.text()直接在画布上写文本
ax.text()在添加画像上写文本
ax.text(x, y, str, fontsize, verticalalignment,horizontalalignment,rotation , kwargs)
x,y 文本在图像的位置,范围(0,1),左下为坐标原点
str 字符串
fontsize 文本大小,整数
verticalalignment 垂直对齐方式 ,可选 ‘center’ ,‘top’ , ‘bottom’,‘baseline’ 等
horizontalalignment 水平对齐方式 ,可以填 ‘center’ , ‘right’ ,‘left’ 等
family 设置字体
style设置字体的风格
weight设置字体的粗细
bbox给字体添加框, 如 bbox=dict(facecolor=‘red’, alpha=0.5) 等。
string注释文本内容
color注释文本内容的字体颜色(1,0,0)红色
1.3.2 处理中文
在axes画图或直接在画布fig上写入text前加入下面代码,可正常显示中文
plt.rcParams['font.sans-serif'] = ['SimHei'] # 用来正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False # 用来正常显示负号
1.4 保存画布
plt.savefig('xxx.jpg')