streamlit+mysql+matplotlib绘制报表和饼图

本文介绍了如何利用Python的pymysql库连接MySQL数据库,通过SQL查询获取数据,并将数据转换为dataframe。接着,利用Streamlit的st.selectbox创建选择框,实现用户交互。然后,通过value_counts对数据进行计数,生成饼图所需的数据,最后用matplotlib绘制饼图并使用st.pyplot在Streamlit应用中展示。整个过程展示了如何结合数据库操作、数据分析和交互式可视化。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

概况:

1、pymysql连接数据库

2、开启浮标,sql查询数据库某表数据

3、把查询的表数据放入dataframe格式,st.write打印出来,得到表格1

4、st.selectbox做选择框获取值传给option,得到选择效果2

5、获取饼图,先pd.value_counts对关键列表计数去重,得到新的表格后,

获取index作为标签 获取列data作为数据index=result.index.tolist()   data=result.data.tolist()

matplotlib绘制饼图,用st.pyplot(fig)页面打出。

说明:

list表[a,b,c]

用print打印为[a,b,c]

用st.write打印为[0:a,1:b,2:c]

不必纠结,同样按照list处理即可

代码:

import matplotlib.pyplot as plt
import pymysql
import pandas as pd
import numpy as np
import seaborn as sns
import datetime
import streamlit as st
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus'] = False

st.markdown('一, *信息表!* :sunglasses:')
#@st.cache(allow_output_mutation&
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值