d3js:根据预先存在的单词权重制作云

时间:2015-09-20 12:59:53

标签: d3.js

在我发现的演示中,d3js wordcloud本身是计算字和消除停止字。

我想提供自己的字数(加权)并自己消除停用词,因为:

  • 我有很长的停用词列表
  • 分析的文本分散在许多目录中

我已经编写了一个例程来递归目录并生成字数的json数据。

d3js能否从提供的数据中生成wordcloud?我想用另一种方式来表达,代码模块化是否足以让d3js只进行云渲染?

野外的任何例子?

这是我要创建的静态html页面的伪代码,我希望d3js能够完成一个词云:

  <body>
        <script type="application/json" id="wordcloud-data">
          {
            "words": {
                "word": [
                {
                "-count": "20",
                "-text": "red"
                },
                {
                "-count": "10",
                "-text": "blue"
                },
                {
                "-count": "25",
                "-text": "orange"
                },
                {
                "-count": "5",
                "-text": "dog"
                }
                ]
            }
          }
        </script>
        <div>word cloud here</div>
  </body>

我试图找到一个例子,但没有成功。

1 个答案:

答案 0 :(得分:0)

没关系。我搜索了更多,最终找到了帮助我的d3.js simple demo

standard d3.js word cloud demo以我的需求为起点有点复杂。虽然随着我的进步,我肯定会回过头来看,它是高级功能的绝佳演示。

值得注意的是,我的JSON格式几乎就在那里。这就是我需要将其更改为:

var words = [
{"text":"red","size":20},
{"text":"blue","size":10},
{"text":"orange","size":25},
{"text":"dog","size":5}];