Spaces:
Build error
Build error
Commit
·
5e9f4d3
1
Parent(s):
b401388
kmeans with example plot done and ready for deployment
Browse files- example/kmeans.py +33 -3
- example/kmedoids.py +0 -0
example/kmeans.py
CHANGED
|
@@ -1,5 +1,9 @@
|
|
| 1 |
-
|
| 2 |
import json
|
|
|
|
|
|
|
|
|
|
|
|
|
| 3 |
|
| 4 |
ENDPOINT: str = "http://127.0.0.1:5000/"
|
| 5 |
|
|
@@ -7,7 +11,7 @@ request_params = {
|
|
| 7 |
"algorithm": "kmeans-clustering",
|
| 8 |
"arguments": {
|
| 9 |
"k": 3,
|
| 10 |
-
"max_iter":
|
| 11 |
},
|
| 12 |
}
|
| 13 |
|
|
@@ -23,5 +27,31 @@ r = requests.post(
|
|
| 23 |
)
|
| 24 |
|
| 25 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 26 |
if __name__ == "__main__":
|
| 27 |
-
|
|
|
|
| 1 |
+
|
| 2 |
import json
|
| 3 |
+
import requests
|
| 4 |
+
import matplotlib.pyplot as plt
|
| 5 |
+
import seaborn as sns
|
| 6 |
+
|
| 7 |
|
| 8 |
ENDPOINT: str = "http://127.0.0.1:5000/"
|
| 9 |
|
|
|
|
| 11 |
"algorithm": "kmeans-clustering",
|
| 12 |
"arguments": {
|
| 13 |
"k": 3,
|
| 14 |
+
"max_iter": 100,
|
| 15 |
},
|
| 16 |
}
|
| 17 |
|
|
|
|
| 27 |
)
|
| 28 |
|
| 29 |
|
| 30 |
+
def plot():
|
| 31 |
+
cluster_data = r.json()["clusters"]
|
| 32 |
+
# plot the clusters and data points
|
| 33 |
+
fig, ax = plt.subplots(figsize=(8, 6))
|
| 34 |
+
|
| 35 |
+
sns.set()
|
| 36 |
+
for cluster in cluster_data:
|
| 37 |
+
sns.scatterplot(
|
| 38 |
+
x=[point[0] for point in cluster["points"]],
|
| 39 |
+
y=[point[1] for point in cluster["points"]],
|
| 40 |
+
label=f"Cluster {cluster['cluster_id']}",
|
| 41 |
+
ax=ax,
|
| 42 |
+
)
|
| 43 |
+
ax.scatter(
|
| 44 |
+
x=cluster["centroid"][0],
|
| 45 |
+
y=cluster["centroid"][1],
|
| 46 |
+
marker="x",
|
| 47 |
+
s=100,
|
| 48 |
+
linewidth=2,
|
| 49 |
+
color="black"
|
| 50 |
+
)
|
| 51 |
+
ax.set_title("K-means Clustering")
|
| 52 |
+
ax.legend()
|
| 53 |
+
plt.show()
|
| 54 |
+
|
| 55 |
+
|
| 56 |
if __name__ == "__main__":
|
| 57 |
+
plot()
|
example/kmedoids.py
ADDED
|
File without changes
|