atma, bir d3 kuvvet düzeni grafiğini çalıştık.D3 - konumlandırma kenarları Stephen Thomas <a href="https://github.com/sathomas/jsDataV.is-source/tree/master/ch7/force" rel="nofollow">https://github.com/sathomas/jsDataV.is-source/tree/master/ch7/force</a> gelen kılavuz dayanarak NaN hataları
Ancak ben kökenini ve nasıl mücadele bilmiyorum Bir hatayı şaşırıp.
Verilen plunker http://plnkr.co/edit/Bx0qe8DNEsnFgLhkxbfS?p=preview sonrasında bu pasajı neden olan
var positionEdge = function(edge, nodes) {
edge.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; });
};
birçok hata örn Hata:
var edges = [];
links.forEach(function(srcLink){
var targetNodeId;
var targetNodeName;
var sourceNodeId;
var sourceNodeName;
nodes.forEach(function(srcNode){
if(srcNode.label === srcLink.source){
sourceNodeId = srcNode.id;
sourceNodeName = srcNode.label;
} else if(srcNode.label === srcLink.target){
targetNodeId = srcNode.id;
targetNodeName = srcNode.label;
}
})
edges.push({
"id": "From_" + sourceNodeName + "_To_" + targetNodeName,
"target": targetNodeId,
"source": sourceNodeId
});
})
// remove duplicate edges
var arr = {};
for (var i=0, len=edges.length; i < len; i++)
arr[edges[i]['id']] = edges[i];
edges = new Array();
for (var key in arr)
edges.push(arr[key]);
bütün neden oluyor Ne: nitelik y2 = "NaN"
Ben aşağıdaki gibi benim kenarları dizi oluşturmak, ancak tam plunker linki kullanınız lütfen sorunu yeniden muktedir için geçersiz değer positionEdge işlevi çağrıldığında NaN hataları atılıyor?
Çok teşekkür ederim. Bana verdiğiniz ikinci seçenek için gitmeyi tercih ettim çünkü ilkini kullanmak aynı hatalarla sonuçlanır (muhtemelen sizin belirttiğiniz diğer düzenlemeler nedeniyle). ** İkinci seçenekle, konuyu ** için açtığım hatayı artık görmüyorum. Bu yüzden cevabınızı cevabım anser olarak işaretleyeceğim. Ancak, yenilenmiş plunker örneğine bir göz atmaya istekli olsaydınız, bunu gerçekten takdir ediyorum. öznitelik dönüşümü = "çeviri (NaN, NaN)" hatası için geçersiz değer alıyorum. http://plnkr.co/edit/Bx0qe8DNEsnFgLhkxbfS?p=preview –
@Sander_M: Tamamen ilk seçeneği kullanarak sadece standart olduğunu unuttum ama aslında (edit bakınız) d3.force' 'yürütür. Yanıldığın için üzgünüm. – tarulen
Seçenek 2'nin geçerli bir tane olmadığını duyduğuma üzüldüm;) Tavsiyenizi alıyorum ve nesneleri hedef ve kaynak olarak kullanıyorum. Muhtemelen baştan başlamak zorunda olduğum anlamına gelir. Öğrenme eğrimi için çok iyi, D3 ile veri görselleştirmeyi gerçekten çok seviyorum. Hatta sigma.js'den daha karmaşık hisseder, aynı zamanda daha fazla seçenek ve olanak sağlar. İşleri temizlediğin ve düzenlediğin için teşekkürler! –