seaborn-count / src /streamlit_app.py
louiecerv's picture
Update src/streamlit_app.py
5826b64 verified
# Import python libraries
import streamlit as st
import seaborn as sns
import pandas as pd
import matplotlib.pyplot as plt
import os # Import the os module for path manipulation
# Get the directory of the current script
script_dir = os.path.dirname(__file__)
# Construct the full path to the CSV file
# Assuming avocado.csv is in the same directory as streamlit_app.py
csv_file_path = os.path.join(script_dir, "avocado.csv")
# Data Set
try:
df = pd.read_csv(csv_file_path)
# Defining Count Graph/Plot
st.title("Avocado Sales Count by Year")
fig = plt.figure(figsize=(10, 5))
sns.countplot(x="year", data=df)
plt.title("Number of Avocado Sales Records per Year") # Add a title to the plot
plt.xlabel("Year") # Label for the x-axis
plt.ylabel("Count of Records") # Label for the y-axis
st.pyplot(fig)
except FileNotFoundError:
st.error(f"Error: The file '{csv_file_path}' was not found.")
st.info("Please ensure 'avocado.csv' is in the same directory as 'streamlit_app.py' inside your Docker container's 'src' directory.")
except pd.errors.EmptyDataError:
st.error(f"Error: The file '{csv_file_path}' is empty.")
st.info("Please ensure 'avocado.csv' contains data.")
except Exception as e:
st.error(f"An unexpected error occurred while loading data or plotting: {e}")