matplotlib-折线图

日期:2024.03.12
内容:将matplotlib的常用方法做一个记录,方便后续查找。
  • 基本使用
# demo01
from matplotlib import pyplot as plt
# 设置图片大小,也就是画布大小
fig = plt.figure(figsize=(20,8),dpi=80)#图片大小,清晰度

# 准备数据
x = range(2,26,2)# x = list(range(2,26,2)) 这两种写法都可以
y = [15,13,14.5,17,20,25,26,26,27,22,18,15]

# 设置x和y轴的刻度
x_ticks01 = [ i for i in range(1,25)]
y_ticks01 = range(min(y),max(y) + 1)
plt.xticks(x_ticks01)
plt.yticks(y_ticks01)

# 绘图
plt.plot(x,y)

# 保存图像
plt.savefig('./test01.png')
plt.savefig('./test01.svg')

# 展示数据
plt.show()

在这里插入图片描述

  • 存在中文
# demo02-统计2小时内每分钟的温度情况
from matplotlib import pyplot as plt
import random

# 设置图片大小
fig = plt.figure(figsize=(20,10),dpi=80)#图片大小,清晰度

# 全局设置中文字体
plt.rcParams['font.sans-serif'] = ['Simhei']

# 准备数据
x = list(range(1,121,1))
y = [random.randint(20,25) for i in range(120)]#把random.randint(20,25)执行120次

# 设置图的标题,x轴和y轴对应的坐标信息
plt.title("时间-温度对应图(10-12点)",fontsize = 18)
plt.xlabel("时间",fontsize = 18)
plt.ylabel("温度",fontsize = 18)

# 设置x和y轴的刻度
x_ticks01 = x
x_ticks01Label = [f"9点{i}"for i in range(00,60)]
x_ticks01Label += [f"10点{i}"for i in range(00,60)]
y_ticks01 = range(min(y),max(y) + 1)
plt.xticks(x_ticks01[::10],x_ticks01Label[::10],rotation = 45,fontsize = 18)# rotation = 45 刻度逆时针旋转45°
plt.yticks(y_ticks01,fontsize = 18)

# 绘图
plt.plot(x,y)

# 展示数据
plt.show()

在这里插入图片描述

  • 添加图例
# demo03-如何加图例
from matplotlib import pyplot as plt
import random
# 设置图片大小
fig = plt.figure(figsize=(20,10),dpi=80)#图片大小,清晰度

# 全局设置中文字体
plt.rcParams['font.sans-serif'] = ['Simhei']
plt.rcParams.update({'font.size': 25})#设置图例字体大小

# 准备数据
x = list(range(11,31))
y1 = [1,0,1,1,2,4,3,2,3,4,4,5,6,5,4,3,3,1,1,1]
y2 = [1,0,1,1,2,2,1,2,1,1,1,2,1,2,1,1,1,1,1,1]

# 设置x和y轴的刻度
x_ticks01 = x
x_ticks01Label = [f"{i}岁"for i in x]
plt.xticks(x_ticks01,x_ticks01Label,rotation = 45,fontsize = 18)#rotation = 45 刻度逆时针旋转45°

# 绘图
plt.plot(x,y1,label = "中文",color = 'r',linestyle="--",linewidth = "5")
plt.plot(x,y2,label = "b")

# 将label = "a"和“b”添加到图中
plt.legend(loc='upper left')
plt.grid(0.5)#绘制网格

# 展示数据
plt.show()

在这里插入图片描述

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱叨叨的小嘟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值