2

js を作成し、[こちら] のサンプル コードに基づいてワード クラウド ベースを実行しようとしています: https://github.com/jasondavies/d3-cloud。私がやろうとしているのは、単語のフォントサイズが配列内の単語の頻度に基づいていることです。たとえば、私は[a、a、a、b、b]を持っているので、単語「a」は「b」よりも大きくなりますが、単語の幅または高さが< svg>よりも大きい場合、単語はなくなった。

layout = d3.layout.cloud().size([w, h])
    .words(frequency_list)
    .padding(5)
    .rotate(function() { return ~~(Math.random() * 2) * 90; })
    .font(d3.select("#font").property("value"))
    .fontSize(function(d) { return (d.freq*wordSize); })
    .spiral(d3.select("input[name=spiral]:checked").property("value"))
    .on("end",draw)
    .start();    

私が考えているのは、最初に要素の幅と高さを取得してから、それに応じてwordSizeを調整することですが、[d3.layout.cloud.js]ではそれができないようです: https://github.com/jasondavies/d3-cloud /blob/master/d3.layout.cloud.js 誰か助けてくれませんか?

4

1 に答える 1