在上回初步介绍了“steamlit”框架的基本用法之后(干货分享 | 用 Streamlit 来制作数据可视化面板教程(一)),这回我们动手来实践一下,用“streamlit”框架来制作一个可视化仪表盘,用到的数据是印度在新冠病毒的影响之下病例数据,包括了印度每个州的“死亡数据”、“治愈数据”、“确诊数据”以及“活跃病例”,感兴趣的童鞋也可以一起动手来实现一下。
01
首先导入所需要用到的模块以及读取数据
我们用到了“pandas”模块当中的“read_csv”的方法,当然特别要指的注意的是,里面用到了“st.cache()”作为装饰器,由于考虑到可能引用的数据会时时发生变化,因此我们会每隔五分钟对缓存做一次清理,并且最多清理20次,要是引用的源数据不会经常改变,那么你可以设置为是
02
我们同时需要添加一下文字说明,以便他人更好的来理解我们所绘制的图形,例如标题、注释等等,
在“streamlit”中的“image”方法来读取图片,而要是我们用到下拉框则是用“st.sidebar.selectbox”方法,而要是使用单选框的话,则是用“st.sidebar.radio”方法,
03
下面我们就开始可视化的部分,分别有直方图、饼图以及折线图,使用的是“plotly_express”当中的对应的方法,代码如下
04
最后我们还想将表格展示在仪表盘上,用到的是“streamlit”当中的“dataframe”方法,代码如下
整体的效果如下图所示
本文内容转载自“关于数据分析与可视化”(ID:dylanxia2019),作者俊欣。