matplotlib的用法

时间:2022-06-01 16:38:40

基本用法

from matplotlib import pyplot as plt

plt.figure(figsize=(20, 8), dpi=80)
# 设置图像标题
plt.title()
# 设置x,y轴的坐标,这里面可以传入两个参数,第一个就轴的坐标参数(ticks),第二个是对应坐标的标签值(labels)
plt.xticks()
plt.yticks()
# 设置x,y轴的坐标代表的是什么
plt.xlabel()
plt.ylabel()
# 展示图片
plt.show()
# 展示图例
plt.legend()
# 保存图片,填路径
plt.savefig()
# 添加网格图
plt.grid()

设置中文

特别注意的是matplotlib是不支持的中文的,下面介绍设置中文的三种方法

第一种用法

from matplotlib import font_manger
# 指定字体路径即可
my_font = font_manger.FontProperties()

当需要显示中文字体时,加上fontproperties=my_font就可以了

第二种方法

直接加上fontproperties=”指定字体”即可,如黑体SimHei等

第三种方法

from matplotlib import pyplot as plt
# 设置全局字体,下面就无需设置fontproperties
plt.rcParams['font.sans-serif'] = ['SimHei']
# 防止x轴字体出错
plt.rcParams['axes.unicode_minus'] = False

绘制图像

# 传入x,y必须是一样长度的列表
plt.plot(x,y)
# 绘制散点图
plt.scatter(x,y)
# 绘制条竖着的条形图
plt.bar(x,y)
# 绘制横着的条形图
plt.barh(x,y)
# 绘制直方图,直方图要指定其num_bins,即它的组数,一般是(列表的最大值-列表的的最小值)//组距,组距看数据的多少而设,一百个以内的数据一般设5~10组。将desity设置文True为频率直方图,False为频数直方图,默认为False
plt.hist()