Spaces:
Build error
Build error
| import json | |
| import requests | |
| import matplotlib.pyplot as plt | |
| import seaborn as sns | |
| ENDPOINT: str = "http://127.0.0.1:5000/" | |
| request_params = { | |
| "algorithm": "kmeans-clustering", | |
| "arguments": { | |
| "k": 3, | |
| "max_iter": 100, | |
| }, | |
| } | |
| headers = { | |
| "Content-Type": "application/json", | |
| } | |
| r = requests.post( | |
| ENDPOINT, | |
| headers=headers, | |
| data=json.dumps(request_params), | |
| ) | |
| def plot(): | |
| cluster_data = r.json()["clusters"] | |
| # plot the clusters and data points | |
| fig, ax = plt.subplots(figsize=(8, 6)) | |
| sns.set() | |
| for cluster in cluster_data: | |
| sns.scatterplot( | |
| x=[point[0] for point in cluster["points"]], | |
| y=[point[1] for point in cluster["points"]], | |
| label=f"Cluster {cluster['cluster_id']}", | |
| ax=ax, | |
| ) | |
| ax.scatter( | |
| x=cluster["centroid"][0], | |
| y=cluster["centroid"][1], | |
| marker="x", | |
| s=100, | |
| linewidth=2, | |
| color="black" | |
| ) | |
| ax.set_title("K-means Clustering") | |
| ax.legend() | |
| plt.show() | |
| if __name__ == "__main__": | |
| plot() | |