python学习笔记(31)----matplotlib,折线图

这篇博客主要介绍了如何使用matplotlib库在Python中绘制折线图,包括设置图片大小、保存图片、调整轴刻度、解决中文乱码问题、添加网格、图例和颜色,以及设置图表标题等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一些画图的基础操作不会,来补一下
1.绘制折线图:plt.plot(x,y)
2.添加图像描述
a.设置图片大小
b.保存
c.设置轴刻度
这里设置刻度时一开始显示的中文为乱码,并有警告
RuntimeWarning: Glyph 23567 missing from current font.
font.set_text(s, 0.0, flags=flags)
matplotlib中默认字体为英文,不支持中文
需要补充二行代码

plt.rcParams['font.sans-serif']=['SimHei'] #显示中文标签
plt.rcParams['axes.unicode_minus']=False

d.设置网格
e.添加图例,以及调整图例位置
f.设置颜色
e.添加标题

#1.绘制折线图
#导入并命别名
from matplotlib import pyplot as plt

# x=[1,2,3,4,5,6,7,8]
# y=[12,43,42,2,24,64,76,44]

# plt.plot(x,y)
# plt.show()
'''
-----------------------------------
'''
#2设置图片大小,保存,设置轴刻度
plt.figure(figsize=(5,5),dpi=100)
#figsize=(x,y),x是宽度,y是高度
#图像模糊时候可以传入dpi参数,让图片清晰,
#dpi没看到具体效果
x=[1,2,3,4,5,6,7,8]
y=[12,43,42,2,24,64,76,44]

#设置,x,y轴刻度
# plt.xticks(range(0,10,2))
# plt.yticks(range(0,100,5))
#一开始中文乱码
plt.rcParams['font.sans-serif']=['SimHei'] #显示中文标签
plt.rcParams['axes.unicode_minus']=False


#设置x,y轴刻度,并且x描述为字符串
x_=list(x)[::2]
#当x太密集时候,可以列表跳着切片
x_labels=['{}小时'.format(i)for i in  x_]
plt.xticks(x_,x_labels,rotation=30)
#ratation旋转度数


'''
list=range(100)
#正着切片
>>> list[:10]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
#负索引切片
 list[-10:]
[90, 91, 92, 93, 94, 95, 96, 97, 98, 99]
#倒着切片
>>> list[10:0:-1]
[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
>>> list[-1:-10:-1]
[99, 98, 97, 96, 95, 94, 93, 92, 91]
#跳着切片
>>> list[::10]
[0, 10, 20, 30, 40, 50, 60, 70, 80, 90]
'''

#绘制网格,网格的稀疏程度和x,y轴的密度相关
#alpha,设置网格的透明度
plt.grid(alpha=0.3)


x2=[1,2,3,4,5,6,7,8,9]
y2=[2,3,4,5,6,7,8,9,10]

#添加图例
plt.plot(x,y,label='我',color='r',linestyle=':')
plt.plot(x2,y2,label='他',color='y',linestyle='-')
#通过color设置颜色,linestyle设置线条风格,linewidth设置线条粗细,alpha设置透明度

#通过loc来调整位置,这里2代表了upper left
plt.legend(loc=2)
#添加标题
plt.title('瞎化')
'''
查看源码
legend(
              handles=(line1, line2, line3),
              labels=('label1', 'label2', 'label3'),
              loc='upper right')

'''

#保存到当前路径下保存为svg矢量图格式,放大不会有锯齿
plt.savefig('./xiaxie.png')
plt.show()

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值