matplotlib功能使用之—折线图(2)
2019-07-16 本文已影响1人
书生_Scholar
一、先做总结
我们利用matplotlib做折线图主要用到以下功能:
1、绘制折线图:plt.plot
2、设置图片大小:plt.figure
3、保存图片:plt.savfig
4、设置xy轴上的刻度和字符串xticks
5、解决刻度稀疏和密集问题xticks
6、设置标题:xy轴的label(title.xlabel,ylabel)
7、设置字体:font.manage.fontProoperties,matplotlib.rc
8、在 一张图上绘制多个图形(plt多次plot)
9、为不同图形添加图例
二、代码案例实现
不多话,直接上码:
# 绘制折线图
from matplotlibimport pyplotas plt
import random
# 显示中文,设置字体
plt.rcParams['font.sans-serif'] = ['SimHei']# 设置简黑字体
plt.rcParams['axes.unicode_minus'] =False # 解决"_" bug
# x,y轴数据
x =range(0,120)
y = [random.randint(20,25)for iin range(0,120)]
y_1 = [random.randint(15,20)for jin range(0,120)]
# print(sorted(y))
# 设置图片大小
plt.figure(figsize=(20,8),dpi=80)
# label 添加图例名,color 设置颜色,linestyle设置线型,linewidth设置线条粗细
plt.plot(x, y,label="温度1",color="r",linestyle=":",linewidth=2)
plt.plot(x, y_1,label="温度2",color="c",linestyle="-",linewidth=4)
# 设置x轴刻度
_x =list(x)
_x_labels = ["10点{}分".format(i)for iin range(60)]
_x_labels += ["11点{}分".format(i)for iin range(60)]
plt.xticks(_x[::3], _x_labels[::3],rotation=45)
# 设置y轴刻度
plt.yticks(range(14,26))
# 添加描述信息
plt.xlabel("时间 (min)")
plt.ylabel("温度 (℃)")
plt.title("10点到12点每分钟的温度变化情况")
# 绘制网格信息
plt.grid(alpha=0.3)# alpha 设置网格透明度
# 添加图例
plt.legend(loc="upper left")
# 展示
plt.show()
3 结果展示
Figure_1.png4 说明
不要纠结数据没有逻辑,主要为了学习和展示我们做的成果