vashu2425 commited on
Commit
429bb33
·
verified ·
1 Parent(s): 21eff50

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +40 -6
app.py CHANGED
@@ -1134,25 +1134,48 @@ def display_distribution_tab():
1134
  key="chart_type_select"
1135
  )
1136
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1137
  with col2:
1138
  if chart_type != "Distribution Plot":
1139
  column_type = "Numerical" if chart_type in ["Histogram", "Box Plot", "Violin Plot"] else "Categorical"
1140
- columns_to_show = df.select_dtypes(include=['number']).columns.tolist() if column_type == "Numerical" else df.select_dtypes(include=['object', 'category']).columns.tolist()
1141
 
1142
  selected_columns = st.multiselect(
1143
  f"Select {column_type} Columns to Visualize",
1144
  options=columns_to_show,
1145
- default=columns_to_show[:min(3, len(columns_to_show))],
1146
  key="column_select"
1147
  )
1148
  else:
1149
- num_cols = df.select_dtypes(include=['number']).columns.tolist()
1150
  selected_columns = st.multiselect(
1151
  "Select Numerical Columns",
1152
  options=num_cols,
1153
- default=num_cols[:min(3, len(num_cols))],
1154
  key="column_select"
1155
  )
 
1156
  st.markdown('</div>', unsafe_allow_html=True)
1157
 
1158
  # Display selected charts
@@ -1530,11 +1553,22 @@ def display_relationships_tab():
1530
  # Scatter plot matrix
1531
  st.subheader("Scatter Plot Matrix")
1532
 
1533
- # Let user choose columns
 
 
 
 
 
 
 
 
 
 
 
1534
  selected_cols = st.multiselect(
1535
  "Select columns for scatter plot matrix (max 5 recommended)",
1536
  options=num_cols,
1537
- default=num_cols[:min(4, len(num_cols))]
1538
  )
1539
 
1540
  if selected_cols:
 
1134
  key="chart_type_select"
1135
  )
1136
 
1137
+ # with col2:
1138
+ # if chart_type != "Distribution Plot":
1139
+ # column_type = "Numerical" if chart_type in ["Histogram", "Box Plot", "Violin Plot"] else "Categorical"
1140
+ # columns_to_show = df.select_dtypes(include=['number']).columns.tolist() if column_type == "Numerical" else df.select_dtypes(include=['object', 'category']).columns.tolist()
1141
+
1142
+ # selected_columns = st.multiselect(
1143
+ # f"Select {column_type} Columns to Visualize",
1144
+ # options=columns_to_show,
1145
+ # default=columns_to_show[:min(3, len(columns_to_show))],
1146
+ # key="column_select"
1147
+ # )
1148
+ # else:
1149
+ # num_cols = df.select_dtypes(include=['number']).columns.tolist()
1150
+ # selected_columns = st.multiselect(
1151
+ # "Select Numerical Columns",
1152
+ # options=num_cols,
1153
+ # default=num_cols[:min(3, len(num_cols))],
1154
+ # key="column_select"
1155
+ # )
1156
+
1157
+
1158
+
1159
  with col2:
1160
  if chart_type != "Distribution Plot":
1161
  column_type = "Numerical" if chart_type in ["Histogram", "Box Plot", "Violin Plot"] else "Categorical"
1162
+ columns_to_show = list(df.select_dtypes(include=['number']).columns) if column_type == "Numerical" else list(df.select_dtypes(include=['object', 'category']).columns)
1163
 
1164
  selected_columns = st.multiselect(
1165
  f"Select {column_type} Columns to Visualize",
1166
  options=columns_to_show,
1167
+ default=list(columns_to_show[:min(3, len(columns_to_show))]), # Convert to list ✅
1168
  key="column_select"
1169
  )
1170
  else:
1171
+ num_cols = list(df.select_dtypes(include=['number']).columns) # Convert to list ✅
1172
  selected_columns = st.multiselect(
1173
  "Select Numerical Columns",
1174
  options=num_cols,
1175
+ default=list(num_cols[:min(3, len(num_cols))]), # Convert to list ✅
1176
  key="column_select"
1177
  )
1178
+
1179
  st.markdown('</div>', unsafe_allow_html=True)
1180
 
1181
  # Display selected charts
 
1553
  # Scatter plot matrix
1554
  st.subheader("Scatter Plot Matrix")
1555
 
1556
+ # # Let user choose columns
1557
+ # selected_cols = st.multiselect(
1558
+ # "Select columns for scatter plot matrix (max 5 recommended)",
1559
+ # options=num_cols,
1560
+ # default=num_cols[:min(4, len(num_cols))]
1561
+ # )
1562
+
1563
+
1564
+ # Convert num_cols to a list before using it in multiselect
1565
+ num_cols = list(df.select_dtypes(include=['number']).columns)
1566
+
1567
+ # Ensure default selection is also a list
1568
  selected_cols = st.multiselect(
1569
  "Select columns for scatter plot matrix (max 5 recommended)",
1570
  options=num_cols,
1571
+ default=list(num_cols[:min(4, len(num_cols))]) # Convert to list ✅
1572
  )
1573
 
1574
  if selected_cols: