2015-07-03 2 views
0

Когда я запускаю этот пример локальноd3 сила-ориентированное дерево показывает NaN при нажатии узла

http://bl.ocks.org/mbostock/1138500

, если я нажимаю на, или попробуйте перетащить, узел он делает это.

enter image description here

Почему?

Эти 1,200 ошибки указывают на этот раздел кода:

   node.attr("cx", function(d) { return d.x; }) 
        .attr("cy", function(d) { return d.y; }); 

       link.attr("x1", function(d) { return d.source.x; }) 
        .attr("y1", function(d) { return d.source.y; }) 
        .attr("x2", function(d) { return d.target.x; }) 
        .attr("y2", function(d) { return d.target.y; }); 

Кажется, что х и у не получать правильные данные?

Я попытался поместить force.stop() в нескольких разных местах на основе комментария в этой статье, но пока не повезло. NaN on Force-Directed Layout Append in D3.js

Спасибо.

+0

Делали ли вы какие-либо изменения вообще выборки данных или кода? – Travis

+0

ах ... я использую очередь, может быть, это прикручивает ее, дайте мне посмотреть ... – airwwwave

+0

Да, не используя очередь, похоже, исправил ее. Очередь автоматически настраивается в шаблоне, который я использую, поэтому я попытаюсь выяснить, какая часть процесса вызывает ошибки. Спасибо за мозговой запас :) Будет отчитываться ... – airwwwave

ответ

1

Очередь не была проблемой. Решение состояло в том, чтобы игнорировать ошибки 404, вызванные двумя последними ссылками, или просто удалить ссылки.

Проблема заключалась в том, что, поскольку в HTML были ссылки на три файла JS, я предполагал, что они необходимы.

<script type="text/javascript" src="http://mbostock.github.com/d3/d3.js?1.29.1"></script> 
<script type="text/javascript" src="http://mbostock.github.com/d3/d3.geom.js?1.29.1"></script> 
<script type="text/javascript" src="http://mbostock.github.com/d3/d3.layout.js?1.29.1"></script> 

Последние два были ошибки 404, так что я искал их в другом месте в Интернете, и скопировать их из code.google.com, но она до сих пор не работает. Просто на удачу я просто попытался удалить ссылки, и это сработало.

По-видимому, эти две последние ссылки не нужны, поэтому ошибки 404 не нарушили его.

Тогда я нашел эту страницу: https://github.com/mbostock/d3/wiki/Upgrading-to-3.0

я не заметил, это было четыре года пример а, так старые ссылки не приходят на ум, как вопрос. Теперь я вижу, что 1.29.1 был признаком v1 D3.

И, конечно же, коммутацию до текущей версии работает

https://cdnjs.cloudflare.com/ajax/libs/d3/3.5.5/d3.min.js 
+0

Итак, ваша проблема исправлена? –

+0

Да. Попытка получить последние две ссылки для работы вызвала проблему. Удаление их решило. Но мне не разрешали отвечать на мой ответ в течение двух дней. – airwwwave

Смежные вопросы