Croplogginganalysis / farm_report.py
Esmaeilkiani's picture
Create farm_report.py
fea66a5 verified
import pandas as pd
import streamlit as st
def load_data():
# Read the Excel file
farms_df = pd.read_excel('نصب چاهک.xlsx')
return farms_df
def main():
st.set_page_config(page_title="گزارش مزارع", layout="wide")
st.title("گزارش مزارع")
# Load data
farms_df = load_data()
# Get unique administrations
administrations = farms_df['اداره'].unique().tolist()
# Add administration filter
selected_admin = st.selectbox("انتخاب اداره", administrations)
# Filter farms by selected administration
filtered_farms = farms_df[farms_df['اداره'] == selected_admin]
# Calculate statistics
total_farms = len(filtered_farms)
remaining_farms = len(filtered_farms[filtered_farms['وضعیت'] == 'در انتظار'])
completed_farms = total_farms - remaining_farms
# Display statistics in a row
st.subheader("آمار کلی")
col1, col2, col3 = st.columns(3)
with col1:
st.metric("تعداد کل مزارع", total_farms)
with col2:
st.metric("مزارع تکمیل شده", completed_farms)
with col3:
st.metric("مزارع باقی‌مانده", remaining_farms)
# Display filtered farms
st.subheader(f"مزارع اداره {selected_admin}")
st.dataframe(filtered_farms)
if __name__ == "__main__":
main()