Myluzh Blog

Python matplotlib 绘制折线图(单坐标系)

发布时间: 2023-7-13 文章作者: myluzh 分类名称: Python 朗读文章


0x01 图像
点击查看原图
0x02 代码
import matplotlib.pyplot as plt
import random
# 支持中文
from pylab import mpl

mpl.rcParams['font.sans-serif'] = ['Arial Unicode MS']
mpl.rcParams['axes.unicode_minus'] = False  # 用来解决不能使用汉字问题,需要导入matplotlib
# 准备x y 数据
x = range(1, 31)
y_hangzhou = [random.uniform(35, 42) for i in x]
y_beijing = [random.uniform(34, 39) for i in x]
# 创建画布
plt.figure(figsize=(10, 5), dpi=70)
# 绘制图像
plt.plot(x, y_hangzhou, color="b", linestyle='-', label='上海')
plt.plot(x, y_beijing, color="r", linestyle='--', label='北京')
# 如果只在plt.plot中设置label还不能最终显示出图例,还需要通过plt.legend将图例显示出来
plt.legend(loc='best')#best是最佳方式显示
# 自定义x y 刻度
x_ticks = ([f"6月{i}日" for i in x])
y_ticks = range(45)
plt.xticks(x[::2], x_ticks[::2])
plt.yticks(y_ticks[35::2])  # 从35开始 每次::2
# 自定义网格
plt.grid(True, linestyle="--", alpha=0.5)
# 定义标题跟x_lable跟y_lable
plt.xlabel("时间")
plt.ylabel("温度")
plt.title("最近1个月的温度", fontsize=15)
# 保存图片 要在show()前面,因为show后会释放figure
plt.savefig("a.png")
# 显示图像
plt.show()

标签: python matplotlib

发表评论