从 python 中的嵌套字典绘制树状图
Drawing a dendrogram from nested dictionaries in python
我在 python
中绘制树状图时遇到问题
我有以下数据:
[{
"label": "11",
"ro": 66.33,
"content": [{
"label": "10",
"ro": 4.67,
"content": [{
"label": "8",
"ro": 0.5,
"content": [{"label": "4"},{"label": "5"}]
},{
"label": "3"
}]
},{
"label": "9",
"ro": 1.33,
"content": [{
"label": "7",
"ro": 0.5,
"content": [{"label": "1"},{"label": "2"}]
},{
"label": "6"
}]
}]
}]
这是相同的数据,但打印为一棵树:
__11______
/ \
__9 __10
/ \ / \
7 6 8 3
/ \ / \
1 2 4 5
我不知道如何从这个数据集中绘制下面的树状图,我很困惑。
谢谢!
我将数据表示更改为链接矩阵:
[
[2, 1, 0.5, 0],
[5, 4, 0.5, 0],
[6, 7, 1.33, 0],
[3, 8, 4.66, 0],
[9, 10, 66.33, 0]
]
然后,我用dendrogram scipy function recommended by ImportanceOfBeingErnest画了它:
def draw(linkage_matrix):
fig = plt.figure(figsize=(5, 5))
dn = dendrogram(linkage_matrix)
plt.show()
这是结果:
我在 python
中绘制树状图时遇到问题我有以下数据:
[{
"label": "11",
"ro": 66.33,
"content": [{
"label": "10",
"ro": 4.67,
"content": [{
"label": "8",
"ro": 0.5,
"content": [{"label": "4"},{"label": "5"}]
},{
"label": "3"
}]
},{
"label": "9",
"ro": 1.33,
"content": [{
"label": "7",
"ro": 0.5,
"content": [{"label": "1"},{"label": "2"}]
},{
"label": "6"
}]
}]
}]
这是相同的数据,但打印为一棵树:
__11______
/ \
__9 __10
/ \ / \
7 6 8 3
/ \ / \
1 2 4 5
我不知道如何从这个数据集中绘制下面的树状图,我很困惑。
谢谢!
我将数据表示更改为链接矩阵:
[
[2, 1, 0.5, 0],
[5, 4, 0.5, 0],
[6, 7, 1.33, 0],
[3, 8, 4.66, 0],
[9, 10, 66.33, 0]
]
然后,我用dendrogram scipy function recommended by ImportanceOfBeingErnest画了它:
def draw(linkage_matrix):
fig = plt.figure(figsize=(5, 5))
dn = dendrogram(linkage_matrix)
plt.show()
这是结果: