如何调整matplotlib绘制CSV数据图表的Y轴范围及显示效果
问题核心原因
- 你从CSV中读取的CPU数值为字符串类型,matplotlib渲染时会将字符串按出现顺序排序而非按数值大小排序,导致Y轴刻度杂乱、折线走势异常
- 未手动指定Y轴的显示范围
修复后的完整代码
import matplotlib.pyplot as plt import csv tijd = [] cpu_waarde = [] with open('proc.csv', newline='') as bestand: reader = csv.reader(bestand) for row in reader: tijd.append(row[0]) # 将字符串格式的CPU值转换为浮点型 cpu_waarde.append(float(row[1])) plt.plot([1, 2, 3, 4, 5, 6, 7], cpu_waarde) plt.xlabel('Sample') plt.ylabel('CPU usage in %') # 固定Y轴显示范围为1到7 plt.ylim(1, 7) plt.show()
修改说明
- 读取CPU数值时新增
float()类型转换,保证matplotlib按实际数值大小渲染Y轴刻度和折线走势 - 新增
plt.ylim(1,7)语句,手动锁定Y轴的显示范围符合需求
内容的提问来源于stack exchange,提问作者John Rambo
相关产品推荐
相关产品推荐

