измените значение степени на графике с помощью degreeview в Networkx

#python #graph #networkx #degrees

#питон #График #networkx #степени

Вопрос:

Я пытаюсь изменить значение степени определенного узла в графике, используя degreeview в Networkx, как показано ниже:

 G.degree[v[0]] = G.degree[v[0]]-1  

Насчет того, что я продолжаю получать эту ошибку:

Ошибка типа: объект «DegreeView» не поддерживает назначение элементов.

Может ли кто-нибудь, пожалуйста, помочь мне узнать, как изменить значение степени на графике с помощью degreeview?

Комментарии:

1. Степень узла-это характеристика узла (количество ребер, прилегающих к узлу). Таким образом, вы не можете изменить степень (вот почему это представление), вам нужно изменить график (т. Е. Удалить соседнее ребро).

Ответ №1:

Если вы работаете в строительстве и вам дают кусок дерева длиной 2 метра, но вам нужен кусок длиной 1,5 метра, вы не собираетесь просто говорить: «Я назначаю его длину 1,5 м» и начинать его использовать. Это не изменит измеренную длину древесины. На самом деле вам нужно изменить сам кусок дерева. Ты должен нарубить дров. Вы должны изменить то, что измеряет «2 м».

Здесь у вас в основном та же проблема. Он говорит вам, что степень, скажем, 7, и вы хотите сказать, что степень равна 6. Вы не можете просто сказать G.degree[v[0]] = G.degree[v[0]] - 1 это, потому что степень измеряет количество ребер v[0] . Вы должны на самом деле попасть туда и изменить сам график. Чтобы уменьшить степень на 1, вам придется удалить ребро.