JERNGOC commited on
Commit
f8ca540
·
verified ·
1 Parent(s): 33cc8f9

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +24 -21
app.py CHANGED
@@ -46,26 +46,29 @@ if uploaded_file is not None:
46
  # 使用保存的 DBSCAN 模型進行聚類
47
  dbscan_labels = dbscan.fit_predict(pca_df)
48
 
49
- # 繪製 K-means 聚類結果
50
- fig, ax = plt.subplots(1, 3, figsize=(15, 5))
 
 
 
 
 
 
51
 
52
- # K-means 繪圖
53
- ax[0].scatter(pca_df['PC1'], pca_df['PC2'], c=kmeans_labels, cmap='viridis')
54
- ax[0].set_title('K-means Clustering')
55
- ax[0].set_xlabel('PC1')
56
- ax[0].set_ylabel('PC2')
 
 
 
57
 
58
- # 階層式聚類繪圖
59
- ax[1].scatter(pca_df['PC1'], pca_df['PC2'], c=hclust_labels, cmap='viridis')
60
- ax[1].set_title('Hierarchical Clustering')
61
- ax[1].set_xlabel('PC1')
62
- ax[1].set_ylabel('PC2')
63
-
64
- # DBSCAN 繪圖
65
- ax[2].scatter(pca_df['PC1'], pca_df['PC2'], c=dbscan_labels, cmap='viridis')
66
- ax[2].set_title('DBSCAN Clustering')
67
- ax[2].set_xlabel('PC1')
68
- ax[2].set_ylabel('PC2')
69
-
70
- # 顯示圖表
71
- st.pyplot(fig)
 
46
  # 使用保存的 DBSCAN 模型進行聚類
47
  dbscan_labels = dbscan.fit_predict(pca_df)
48
 
49
+ # ================== K-means 聚類圖表 ==================
50
+ st.subheader("K-means 聚類結果")
51
+ fig_kmeans, ax_kmeans = plt.subplots()
52
+ ax_kmeans.scatter(pca_df['PC1'], pca_df['PC2'], c=kmeans_labels, cmap='viridis')
53
+ ax_kmeans.set_title('K-means Clustering')
54
+ ax_kmeans.set_xlabel('PC1')
55
+ ax_kmeans.set_ylabel('PC2')
56
+ st.pyplot(fig_kmeans)
57
 
58
+ # ================== 階層式聚類圖表 ==================
59
+ st.subheader("階層式聚類結果")
60
+ fig_hclust, ax_hclust = plt.subplots()
61
+ ax_hclust.scatter(pca_df['PC1'], pca_df['PC2'], c=hclust_labels, cmap='viridis')
62
+ ax_hclust.set_title('Hierarchical Clustering')
63
+ ax_hclust.set_xlabel('PC1')
64
+ ax_hclust.set_ylabel('PC2')
65
+ st.pyplot(fig_hclust)
66
 
67
+ # ================== DBSCAN 聚類圖表 ==================
68
+ st.subheader("DBSCAN 聚類結果")
69
+ fig_dbscan, ax_dbscan = plt.subplots()
70
+ ax_dbscan.scatter(pca_df['PC1'], pca_df['PC2'], c=dbscan_labels, cmap='viridis')
71
+ ax_dbscan.set_title('DBSCAN Clustering')
72
+ ax_dbscan.set_xlabel('PC1')
73
+ ax_dbscan.set_ylabel('PC2')
74
+ st.pyplot(fig_dbscan)