任务介绍
之前介绍了通过matplotlib来画折线图的基础知识,这次我们用画折线图的知识来画温度变化图
温度记录文件
首先,我们新建一个txt文件,输入以下内容保存,作为一段时间的温度值记录
37
36
35
30.5
32
38.5
37
从txt文件中读取温度值
使用tkinter的打开文件对话框选择温度记录的txt打开
import tkinter
import tkinter.filedialog
fn = tkinter.filedialog.askopenfilename(filetypes=[('TXT', '.txt')])
print(fn)
with open(fn) as f:
lines = f.readlines()
print(lines)
将读取的温度值画成折线图
我们从txt文件里读取出来的是字符串类型的,并不是数字类型的,而且还带有换行符,不能直接使用,
因此需要用float将字符串转换为带小数的数字类型,将转换后的数字一个个的放进数组nums中:
nums=[]
for l in lines:
n = float(l.strip())
nums.append(n)
print(nums)
有了数字类型的数组nums后,我们就可以用来画pyplot折线图
完整代码:
import tkinter
import tkinter.filedialog
import matplotlib.pyplot as plt
fn = tkinter.filedialog.askopenfilename(filetypes=[('TXT', '.txt')])
print(fn)
with open(fn) as f:
lines = f.readlines()
print(lines)
nums=[]
for l in lines:
n = float(l.strip())
nums.append(n)
print(nums)
plt.plot(nums, marker='o')
plt.show()
效果如下: