sourize commited on
Commit
5d59f3a
·
1 Parent(s): 02ea34e

Initial Commit

Browse files
Files changed (1) hide show
  1. pages/📈 Analytics Dashboard.py +4 -3
pages/📈 Analytics Dashboard.py CHANGED
@@ -48,6 +48,7 @@ def analytics_dashboard_page():
48
  }).round(3)
49
  hourly_stats.columns = ['Total_Transactions', 'Fraud_Count', 'Fraud_Rate']
50
  hourly_stats = hourly_stats.reset_index()
 
51
  fig = px.line(
52
  hourly_stats,
53
  x='Hour',
@@ -71,6 +72,7 @@ def analytics_dashboard_page():
71
  st.markdown("### 💵 Transaction Amount Analysis")
72
  col1, col2 = st.columns(2)
73
  with col1:
 
74
  fig = px.histogram(
75
  transactions,
76
  x='Amount',
@@ -80,7 +82,6 @@ def analytics_dashboard_page():
80
  labels={'Is_Fraud': 'Fraud Status'},
81
  marginal="box"
82
  )
83
- fig.update_layout(xaxis_range=[0, 2000])
84
  st.plotly_chart(fig, use_container_width=True)
85
  with col2:
86
  fig = px.box(
@@ -90,13 +91,13 @@ def analytics_dashboard_page():
90
  title="Amount Distribution: Normal vs Fraud",
91
  labels={'Is_Fraud': 'Fraud Status', 'Amount': 'Transaction Amount (₹)'}
92
  )
93
- fig.update_layout(yaxis_range=[0, 1000])
94
  st.plotly_chart(fig, use_container_width=True)
95
  st.markdown("### 👥 Customer Demographics & Fraud Risk")
96
  age_bins = pd.cut(transactions['Customer_Age'], bins=6, precision=0)
97
  age_stats = transactions.groupby(age_bins)['Is_Fraud'].agg(['count', 'sum', 'mean']).reset_index()
98
  age_stats.columns = ['Age_Group', 'Total', 'Fraud_Count', 'Fraud_Rate']
99
- age_stats['Age_Group'] = age_stats['Age_Group'].astype(str)
 
100
  fig = px.bar(
101
  age_stats,
102
  x='Age_Group',
 
48
  }).round(3)
49
  hourly_stats.columns = ['Total_Transactions', 'Fraud_Count', 'Fraud_Rate']
50
  hourly_stats = hourly_stats.reset_index()
51
+ st.write("hourly_stats", hourly_stats) # Debug output
52
  fig = px.line(
53
  hourly_stats,
54
  x='Hour',
 
72
  st.markdown("### 💵 Transaction Amount Analysis")
73
  col1, col2 = st.columns(2)
74
  with col1:
75
+ st.write("transactions", transactions) # Debug output
76
  fig = px.histogram(
77
  transactions,
78
  x='Amount',
 
82
  labels={'Is_Fraud': 'Fraud Status'},
83
  marginal="box"
84
  )
 
85
  st.plotly_chart(fig, use_container_width=True)
86
  with col2:
87
  fig = px.box(
 
91
  title="Amount Distribution: Normal vs Fraud",
92
  labels={'Is_Fraud': 'Fraud Status', 'Amount': 'Transaction Amount (₹)'}
93
  )
 
94
  st.plotly_chart(fig, use_container_width=True)
95
  st.markdown("### 👥 Customer Demographics & Fraud Risk")
96
  age_bins = pd.cut(transactions['Customer_Age'], bins=6, precision=0)
97
  age_stats = transactions.groupby(age_bins)['Is_Fraud'].agg(['count', 'sum', 'mean']).reset_index()
98
  age_stats.columns = ['Age_Group', 'Total', 'Fraud_Count', 'Fraud_Rate']
99
+ age_stats['Age_Group'] = age_stats['Age_Group'].astype(str) # Fix Interval serialization
100
+ st.write("age_stats", age_stats) # Debug output
101
  fig = px.bar(
102
  age_stats,
103
  x='Age_Group',