matplotlib轴乱序解决

本文讲述了如何从CSV文件中导入数据时遇到的y轴数值乱序问题,通过将字符串转换为整数解决,并展示了使用matplotlib正确绘制图表的过程。

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

使用plt画图出现轴乱序

问题:从csv文件导入数据后y轴的数是乱序的

详情:
csv文件
在这里插入图片描述
代码

xdate=[]
ynewdi=[]#新确诊
ynosym=[]
with open("广州疫情.csv",encoding='utf-8')as f:
    i=f.readlines()
    for j in range(1,len(i)):
        col=i[j].replace('\n','').split(',')
        xdate.append(col[0])
        ynewdi.append(col[1])
        ynosym.append(col[2])
    print(xdate)
    print(ynewdi)
    print(ynosym)
#解决中文显示问题
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus'] = False
plt.title('广州疫情',fontstyle='italic',backgroundcolor='g')
plt.xlabel('日期')
plt.ylabel('人数')
plt.plot(xdate,ynewdi,'r<--',xdate,ynosym,'go-')
plt.show()

结果
在这里插入图片描述
原因:
csv导入的数据为string,需要将ynewdi[]和ynosym[]中的转换为int才是我所需要的

修改后:

xdate=[]
ynewdi=[]#新确诊
ynosym=[]
with open("广州疫情.csv",encoding='utf-8')as f:
    i=f.readlines()
    for j in range(1,len(i)):
        col=i[j].replace('\n','').split(',')
        xdate.append(col[0])
        ynewdi.append(int(col[1]))
        ynosym.append(int(col[2]))
    print(xdate)
    print(ynewdi)
    print(ynosym)
    #解决中文显示问题
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus'] = False
plt.title('广州疫情',fontstyle='italic',backgroundcolor='g')
plt.xlabel('日期')
plt.ylabel('人数')
plt.plot(xdate,ynewdi,'r<--',xdate,ynosym,'go-')
plt.show()

正确显示
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值