# 需要导入模块: import seaborn [as 别名]
# 或者: from seaborn import set_color_codes [as 别名]
def generate_clusters(words, vectors_in_2D, print_status=True):
# HDBSCAN, i.e. hierarchical density-based spatial clustering of applications with noise (https://github.com/lmcinnes/hdbscan)
vectors = vectors_in_2D
sns.set_context('poster')
sns.set_color_codes()
plot_kwds = {'alpha' : 0.5, 's' : 500, 'linewidths': 0}
clusters = HDBSCAN(min_cluster_size=2).fit_predict(vectors)
palette = sns.color_palette("husl", np.unique(clusters).max() + 1)
colors = [palette[cluster_index] if cluster_index >= 0 else (0.0, 0.0, 0.0) for cluster_index in clusters]
fig = plt.figure(figsize=(30, 30))
plt.scatter(vectors.T[0], vectors.T[1], c=colors, **plot_kwds)
plt.axis('off')