OpenLearningApp / app.py
syedislamuddin's picture
Upload 2 files
4021dda
import streamlit as st
import pandas as pd
import plotly.express as px
st.set_page_config(page_title='Excel Plotter')
st.title('My Excel File Plotter Dashboard πŸ‘¨β€πŸŽ“')
st.subheader('Prepare to be amazed as we transform your Excel file into stunning visualizations!')
uploaded_file = st.file_uploader('Choose a XLSX file', type='xlsx')
if uploaded_file:
st.markdown('---')
df = pd.read_excel(uploaded_file, engine='openpyxl')
st.dataframe(df)
lst=df.columns
groupby_column = st.selectbox(
'What would you like to analyse?',
lst,
)
####### It is better to extract above list from the dataframe, they might change
output_columns = st.multiselect(
'What would you like to analyse?',
lst,
)
#output_columns = ['Sales', 'Profit']
df_grouped = df.groupby(by=[groupby_column], as_index=False)[output_columns].sum()
# -- PLOT DATAFRAME
fig =px.bar(
df_grouped,
x=groupby_column,
y='Sales',
color='Profit',
color_continuous_scale=['blue', 'yellow', 'green',],
template='plotly_white',
title=f'<b>Sales & Profit by {groupby_column}</b>' )
st.plotly_chart(fig)
# -- DOWNLOAD SECTION
st.subheader('"Moreover, starting next week, we will be introducing a new feature that allows you to conveniently download these files, inshaAllah"')