Python 将数据可视化为图形
我有一个来自不同书籍的标题数据集。我希望使用每本书的书名之间的余弦相似性网络图来形象化这一点。这些书被分为两大类-Python 将数据可视化为图形,python,graph,data-visualization,Python,Graph,Data Visualization,我有一个来自不同书籍的标题数据集。我希望使用每本书的书名之间的余弦相似性网络图来形象化这一点。这些书被分为两大类-1或0,我想根据类别确定颜色坐标。每个标题之间的余弦相似性应该是垂直的权重 为此,我编写了以下代码: cs_title = squareform(pdist(tit.toarray(), 'cosine')) cs_abstract = squareform(pdist(abst.toarray(), 'cosine')) X = cs_title + cs_abstract pri
1
或0
,我想根据类别确定颜色坐标。每个标题之间的余弦相似性应该是垂直的权重
为此,我编写了以下代码:
cs_title = squareform(pdist(tit.toarray(), 'cosine'))
cs_abstract = squareform(pdist(abst.toarray(), 'cosine'))
X = cs_title + cs_abstract
print(X.shape)
它输出每本书之间余弦相似性的平方矩阵。我现在想在一个无向图中形象地展示这一点。到目前为止,我写这篇文章是为了实例化一个graph类:
g = Graph(directed=False)
但我现在不确定如何添加要可视化的数据。使用以下代码,您可以将邻接矩阵转换为图形:
g = graph_tool.Graph(directed = False)
g.add_vertex(len(X))
edge_weights = g.new_edge_property('double')
for i in range(X.shape[0]):
for j in range(X.shape[1]):
if i > j and X[i,j] != 0:
e = g.add_edge(i, j)
edge_weights[e] = X[i,j]
graph_draw(g, vertex_text=g.vertex_index, vertex_font_size=18, output_size=(200, 200), output="two-nodes.png")
注:这不符合要求的颜色坐标。正方形
X
矩阵称为加权邻接矩阵。如果您在文档中检查这一点,我非常确定graph tool应该有一种加载邻接矩阵的方法。