def create_text_graph(self, text, percentage): words_list = self.dictionary.normalize_document(text) keywords = self.topicModel.return_top_words(words_list, percentage) graph = Graph() for i in range(len(words_list)): if words_list[i] in keywords: node = graph.get_node(words_list[i]) weight = 4 for next_node_word in words_list[i + 1:i + 4]: #2 nodes ahead if next_node_word in keywords: next_node = graph.get_node(next_node_word) node.connect_to(next_node, weight) weight -= 1 graph.remove_single_vertices() self.color_graph(graph) return graph