2013-07-08 18 views
5

Kendi kelime bulutumu oluşturmak için http://www.jasondavies.com/wordcloud/#http%3A%2F%2Fen.wikipedia.org%2Fwiki%2F%7Bword%7D=cloud d3 örneğini kullanıyorum.d3 kelime bulutları - çok fazla çakışma oluşuyor

Tüm yapmak istediğim, sözcüklerin gösterdiği nesnelerin özelliklerine bağlı olarak bazı renk nitelikleri eklenmesidir. Örneğin, 4 kelime vardır - ABD, Hindistan, İngiltere ve Almanya - sözcüklerin rengini ayarlamak için eşikleri kullanıyorum - bunun nüfus yoğunluğuna dayalı bir renk koymaya benzediğini söyleyebiliriz. Bununla birlikte, bu durum, herhangi bir şekilde, ülkenin kara kütlesini gösterebilecek yazı tipinin boyutunu etkilemez.

Sorunum, sözcüklerin hepsinin birbiriyle çakışmasıdır.

Neyi yanlış yaptığımı merak ediyorum - bu koda bakın - 'draw' işlevim. Burada ne yapıyorum?

draw: function(countries) { 
     var cctrplt = {BuOrPuRd: { 
      4: ["#9ebcda","#e32636","#08306b", "#ffbf00"] 
     }}; 
     var fillthr = 
      d3.scale.threshold() 
      .domain([2, 5, 10]) 
      .range(cctrplt.BuOrPuRd[4]); 
     d3.select("#ddTagCloudContentRoot").append("svg") 
      .attr("width", width) 
      .attr("height", height) 
      .append("g") 
      .attr("transform", "translate(300,300)") 
      .selectAll("text") 
      .data(countries) 
      .enter().append("text") 
      .style("font-size", function(d) { return (d.size) + "px"; }) 
      .style("font-family", "Impact") 
      .style("fill", function(k,i) { var ccode = colours_list[k.text]; return fillthr(ccode); }) 
      .attr("text-anchor", "middle") 
      .attr("transform", function(d) { 
       return "translate(" + [d.x, d.y] + ")"; 
      }) 
      .text(function(d) { return d.text; }); 
    } 

Paylaşmak istediğim başka bir kod varsa, bana bildirin.

Teşekkürler.

cevap

5

Çözüm bulundu. Metnin yatay olarak yerleştirilmesini istediğim gibi rotate() işlev çağrısı kullanmıyordum. Çağrıyı bırakmanın tamamen yardımcı olacağını düşündüm.

durum böyle görünmüyor. bu yüzden rotate (0) ekliyorum ve bu kadar. şimdi iyi görünümlü bir kelime bulutu alıyorum.

İPUCU: Metin stillerine karşı kontur: siyah kullanır ve bu da düzgün bir sunum sağlar.

+0

Aman tanrım, beni çok fazla zaman kurtardın. Tüm ups var. –

+0

Döndürme (0) kullandım, yardım etmiyor. – dresh