Найти разделение на шесть градусов в сети актер-актер

Это работает для меня во всех браузерах (включая Firefox)

https://gist.github.com/jaydson/1780598

https://jsfiddle.net/sidanmor/v6m9exsw/

var myConfObj = {
  iframeMouseOver : false
}
window.addEventListener('blur',function(){
  if(myConfObj.iframeMouseOver){
    console.log('Wow! Iframe Click!');
  }
});

document.getElementById('idanmorblog').addEventListener('mouseover',function(){
   myConfObj.iframeMouseOver = true;
});
document.getElementById('idanmorblog').addEventListener('mouseout',function(){
    myConfObj.iframeMouseOver = false;
});

0
задан eabanoz 18 January 2019 в 04:44
поделиться

1 ответ

Узлом с кратчайшим путем ко всем остальным узлам будет узел с наименьшей дальностью или наивысшей центральностью близости, рассчитанный в igraph с closeness(), см. ?closeness() и Bavelas (1950), и вики nice страница для централизованных мер .

Ответы на три подвопроса ниже:

1) В igraph, вес равен , трение , а не смазка. См. мой недавний ответ на тот же вопрос здесь для более подробной информации

2) Я думаю центральность звучит больше как то, что вы ищем: « наименьшее суммированное расстояние до всех остальных узлов ». В вашем случае и центральность собственного вектора (которая, как мне кажется, имеет более сложную и менее интуитивную формулу) и центральность близости оставляют вас с привязанными победителями. Сравните:

eigen_centrality(lc_projected_g)$vector
closeness(lc_projected_g)

Решение о том, какой узел является правильным, если многие победители имеют одинаковое значение, на самом деле является вопросом вашего собственного суждения. Поскольку у нескольких ученых было число Эрдаса 1, Пол Эрдс использовал альтернативную формулу для наименьшего числа Эрда с 1 на k совместно опубликованных работ, чтобы присвоить наименьшее число Эрда человеку с большинством совместно опубликованных работ (k) с ему. Я подозреваю, что при воспроизведении ваших типов аффилированных сетей будут создаваться структуры с «привязанными победителями» для кратчайшего пути ко всем остальным узлам, а также в диаграммах немного большего размера, чем у вас. Возможно, вы могли бы еще раз подумать, почему вы хотите, чтобы самый центральный узел вашей перепроекции имел в виду, вернувшись к исходной двухсторонней структуре вашего графа?

3) Вы потеряли свои имена ребер, потому что перепроектированные ребра по сути не совпадают с ребрами. Радуйся, что они ушли. Однако я не могу воспроизвести какие-либо потерянные имена ребер с вашим кодом. g_graph не имеет имен или меток, установленных для E(g). E(lc_projected_g) перечисляет хорошо именованные ребра, поскольку вершины имеют правильные имена. Вы всегда можете перестроить свои собственные имена, например:

E(lc_projected_g)$label <- apply(ends(lc_projected_g, E(lc_projected_g)), 1, paste,collapse="--")

при условии, что ваши вершины уже правильно названы. Ваша проекция с bipartite_projection() должна всегда содержать имена вершин, но не имена ребер. В вашем коде выше, они делают - по крайней мере для меня. Моя строка кода выше устанавливает метку (которая появляется при построении графика), используя paste(), чтобы склеить имена вершинных пар каждого ребра вместе с помощью «-». Проверьте ends(lc_projected_g, E(lc_projected_g)). Он должен перечислить именованные пары вершин в виде матрицы.

Много вопросов в одном, но хорошо работающем примере кода. Удачи.

0
ответ дан nJGL 18 January 2019 в 04:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: