Update app.py
Browse files
app.py
CHANGED
@@ -28,27 +28,27 @@ def apply_kmeans(data, k):
|
|
28 |
def main():
|
29 |
st.title("K-means Clustering Simulator")
|
30 |
|
31 |
-
|
32 |
k_value = st.slider("Select k value:", 1, 10)
|
33 |
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
centroids, labels = apply_kmeans(data.values, k_value)
|
44 |
|
45 |
-
|
46 |
-
ax.scatter(data['x'], data['y'], c=labels, cmap='viridis')
|
47 |
ax.scatter(centroids[:, 0], centroids[:, 1], s=200, c='red', marker='X')
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
|
|
52 |
|
53 |
if __name__ == "__main__":
|
54 |
-
main()
|
|
|
28 |
def main():
|
29 |
st.title("K-means Clustering Simulator")
|
30 |
|
31 |
+
datasets = st.multiselect("Choose datasets:", ["๊ตํต์ ๊ทผ์ฑ", "์์ฐํ๊ฒฝ", "์ธ๊ตฌ๋ฐ์ง๋"])
|
32 |
k_value = st.slider("Select k value:", 1, 10)
|
33 |
|
34 |
+
dataset_mapping = {
|
35 |
+
"๊ตํต์ ๊ทผ์ฑ": traffic_df,
|
36 |
+
"์์ฐํ๊ฒฝ": nature_df,
|
37 |
+
"์ธ๊ตฌ๋ฐ์ง๋": population_df
|
38 |
+
}
|
39 |
+
|
40 |
+
fig, ax = plt.subplots(figsize=(8, 8))
|
41 |
+
for dataset_name in datasets:
|
42 |
+
data = dataset_mapping[dataset_name]
|
43 |
centroids, labels = apply_kmeans(data.values, k_value)
|
44 |
|
45 |
+
ax.scatter(data['x'], data['y'], label=dataset_name, cmap='viridis')
|
|
|
46 |
ax.scatter(centroids[:, 0], centroids[:, 1], s=200, c='red', marker='X')
|
47 |
+
ax.set_xlim(0, 100)
|
48 |
+
ax.set_ylim(0, 100)
|
49 |
+
ax.set_title(f"K-means clustering result (k={k_value})")
|
50 |
+
ax.legend()
|
51 |
+
st.pyplot(fig)
|
52 |
|
53 |
if __name__ == "__main__":
|
54 |
+
main()
|