作者
AJGordon
责编
Carol
头图
CSDN付费下载于视觉中国
本文主要介绍如何利用Python的Streamlit库和Heroku云平台来做一个交互式数据分析Web应用。开发环境如下:
Windows10系统Anaconda3(python3.7.4)Git(2.26.0.windows.1)Heroku账号梯子(Heroku需科学上网才可访问)
Streamlit
根据Streamlit官方文档介绍,它是一个开放源代码的Python库,可以轻松地为机器学习和数据科学构建漂亮的自定义web应用程序。也就是说,即使你对web开发并不熟悉,但只要利用它,就可以很容易搭建出一个Web。
通过“pipinstallstreamlit”进行安装,再执行“streamlithello”。若安装成功,默认浏览器会自动打开或输入“localhost:”,会弹出如下图界面。
图1安装成功界面
Streamlit用于数据可视化的话,主要模块有:Cache,Interactivewidgets,Charts。
1)Cache
Streamlit遵循由上至下的运行顺序,所以每次代码中有进行任何更改,都会重新开始运行一遍,会十分耗时。
st.cache会对封装起来的函数进行缓存,避免二次加载。如果函数中的代码发生变动,cache会重新加载一遍并缓存起来。假如将代码还原到上一次版本,由于先前的数据已经缓存起来了,所以不会进行二次加载。importstreamlitasstimporttimest.write(Loading....)start_time=time.clock()
st.cache()defexpensive_