【问题标题】:How to plot only a specific DBSCAN label using matplotlib?如何使用 matplotlib 仅绘制特定的 DBSCAN 标签?
【发布时间】:2019-08-14 12:55:20
【问题描述】:

我正在使用 sckitlearn/matplotlib 使用 3D 投影对一些数据进行聚类和绘制。代码运行良好,但现在我只想绘制一个特定的 DBSCAN 标签。

我希望单独绘制标签 0 或 1 或 2,以便我可以更轻松地识别每个集群中的数据。如何提取这些值?有什么想法吗?

【问题讨论】:

    标签: python-2.7 matplotlib label dbscan


    【解决方案1】:

    使用数组索引。

    可以轻松地绘制X[label == 1]

    【讨论】:

    • 我的绘图如下: plt.scatter(X[:,0], X[:,1], X[:,2], c=db.labels_, cmap='rainbow' ) 更改为: plt.scatter(X[db.labels_ == 1], c=db.labels_, cmap='rainbow') 或 plt.scatter(X[db.labels_ == 1], X[db.labels_ == 1], X[db.labels_ == 1], c=db.labels_, cmap='rainbow') 并不顺利。
    • 因为X 是二维的,你需要一个二维索引,和以前一样。或者你定义subX=X[labels==1] 并像以前一样绘制它。
    猜你喜欢
    • 1970-01-01
    • 2018-01-16
    • 2020-11-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-28
    • 2021-10-06
    • 2018-02-26
    相关资源
    最近更新 更多