Python 如何创建COVID19数据表示GUI
COVID-19大流行在世界各地打乱了日常生活,许多国家实施了封锁和其他限制措施以控制病毒的传播。因此,人们对病毒传播的关注度很高,包括活跃病例和确认病例的数量。借助技术的帮助,现在可以访问这些数据并使用图形用户界面(GUI)实时可视化。本教程将概述一个创建用于显示COVID-19数据的Python程序的过程。
创建一个Tkinter GUI来显示COVID19数据
此Python程序演示了如何使用tkinter库创建用于显示COVID-19数据的GUI。该程序从API获取数据,并使用最新的信息更新GUI,包括总活动病例数、总确认病例数和最后更新时间。
以下代码使用Python的tkinter库创建了一个GUI。该GUI包括两个标签和一个按钮。第一个标签显示总活动病例数,而第二个标签显示总确认病例数。按钮允许用户刷新数据和显示更新后的信息。
import requests
import json
from tkinter import *
window = Tk()
# Creating the GUI window
window.title("COVID-19 Tracker")
# Setting the size of the window
window.geometry('250x100')
# Adding labels to the window
lbl_active = Label(window, text="Total Active Cases:")
lbl_active.grid(column=0, row=0)
lbl_confirmed = Label(window, text="Total Confirmed Cases:")
lbl_confirmed.grid(column=0, row=1)
lbl_active_value = Label(window, text="")
lbl_active_value.grid(column=1, row=0)
lbl_confirmed_value = Label(window, text="")
lbl_confirmed_value.grid(column=1, row=1)
lbl_updated = Label(window, text="")
lbl_updated.grid(column=0, row=2, columnspan=2)
# Function to fetch and display the data
def update_data():
url = "https://api.covid19india.org/data.json"
response = requests.get(url)
data = json.loads(response.text)
lbl_active_value.configure(text=data["statewise"][0]["active"])
lbl_confirmed_value.configure(text=data["statewise"][0]["confirmed"])
lbl_updated.configure(text="Data last updated on " + data["statewise"][0]["lastupdatedtime"])
# Adding a button to fetch new data
btn_refresh = Button(window, text="Refresh Data", command=update_data)
btn_refresh.grid(column=0, row=3, columnspan=2)
# Calling the update_data function to display initial data
update_data()
window.mainloop()
解释
- 第一步是导入所需的库 – requests,json 和 tkinter。
-
然后,通过实例化Tk()类创建一个tkinter窗口。窗口的标题设置为“COVID-19追踪器”,窗口的几何形状设置为250×100像素。
-
将标签添加到窗口以显示活跃病例和确认病例的总数。添加两个额外的标签以显示这些病例的值。
-
将一个空白标签添加到窗口以显示数据的最后更新时间。
-
定义update_data()函数,它从API获取数据,解析JSON数据,并更新显示活跃病例总数、确认病例和最后更新时间的标签的值。
-
在窗口中添加一个按钮,当点击时触发update_data()函数。
-
在最后调用update_data()函数以显示初始数据。
-
最后调用mainloop()方法以显示GUI窗口并等待用户交互。
为了运行代码,您需要运行下面显示的命令。
命令
pip install requests
pip install tkinter
输出
当程序运行时,会出现一个名为“COVID-19跟踪器”的GUI窗口,其中有两个标签显示当前活跃病例的总数和确诊病例的总数。这些标签下方是一个空白区域,用于显示数据的更新时间。
在这个空白区域下方有一个名为“刷新数据”的按钮。点击此按钮会从API获取新数据,并更新两个标签的值以及“最后更新”标签的文本。
结论
这个程序对于那些想要追踪其地区或全球COVID-19传播情况的个人非常有用。通过修改代码,用户可以自定义GUI显示额外的信息或追踪与大流行相关的其他数据点。