聚类分析python画树状图--Plotly(dendrogram)用法解析

1、前言

聚类分析是机器学习和数据分析中非常常见的分类方法,

当我们用到层次聚类(系统聚类)时,最常用的分析方法就是绘制树状图,

比较常见的统计软件像SPSS、SAS、R等都可以直接绘制树状图,比较简单,

今天主要介绍下python怎么绘制。

2、Plotly

python绘制树状图主要介绍使用Plotly工具(当然也可能有其他方法)

2.1 安装Plotly

pip install plotly

注意:树形图可在1.8.7+版本中使用。运行pip install plotly --upgrade以更新您的Plotly版本。

import plotly
plotly.__version__

2.2注册 Plotly

注意:Plotly的Python库是免费的开源软件!

但是想要使用Plotly需要注册并调用,自己可以将Plotly设置为在线或离线模式或jupyter笔记本中工作。 

 网址:https://plot.ly/#/

 根据生成的密匙来调用:

import plotly
plotly.tools.set_credentials_file(username='****注册用户名****', api_key='****密匙****')

2.3 调用试行

import plotly.plotly as py
import plotly.figure_factory as ff

import numpy as np

X = np.random.rand(15, 15)
dendro = ff.create_dendrogram(X)
dendro['layout'].update({'width':800, 'height':500})
py.iplot(dendro, filename='simple_dendrogram')

生成树状图 

我们可以看到图片的右上角和右下角还有可以编辑的功能,大家可以自己测试一下

2.4实际运行

2.4.1导入数据

import pandas as pd
data = pd.read_csv('cluster.csv')

2.4.2查看数据

data.head()

2.4.3 生成树状图

X = data[["sum1","sum2","X1","X2","X3"]]

先定义X,确定分类变量

fig = ff.create_dendrogram(X, orientation='left',labels=list(data["城市"]))
fig['layout'].update({'width':800, 'height':800})
py.iplot(fig, filename='dendrogram_with_labels')

画图

由于城市数量较多所以左边显示的比较模糊,其实也是要说明的一点:

当分类的类别较多时不建议画树状图来分析。

猜你喜欢

转载自blog.csdn.net/Andy_shenzl/article/details/81806899