0

我希望制作一个动态的词云,尽可能地实时更新(尽可能接近),从 MYSQL 数据库中提取单词和句子。然后每隔几秒查询一次 MYSQL 以更新词云。

我从谷歌找到了这个库,这对静态词云很有用。但不在动态词云中https://github.com/timdream/wordcloud2.js

当我更新单词列表数组时,比如说,我将一个单词添加到列表数组中,整个词云会刷新,但不仅仅是将新添加的单词添加到词云中。那么,有没有办法实现动态词云呢?

感谢您的大力帮助。

4

1 回答 1

1

总有办法,但你缺少一些构建块。

您的云存在两个地方:

1)服务器端(数据库+php)2)客户端(浏览器)

PHP(大概)创建了一个平面页面,其中包含客户端 JS 用来渲染云的信息。您的浏览器(JS)完成了真正的工作。

为了检索更新,JS 需要每隔一定时间从服务器拉取新信息。最简单的方法是重新加载页面。另一种方法是使用 AJAX 检索新数组并重新渲染云。为此,您需要更深入地研究 JS。

您可能正在寻找的是使用 AJAX 定期检索一个新数组,而不是从头开始重新渲染云,而是循环遍历数组中的每个单词和先前数组中的每个单词并删除任何消失的单词,添加任何新词,如果它们的值发生变化,则更新任何词的 HTML(大小)。

查看您正在使用的 JS,它似乎不包含该功能。这需要您调查和理解 JS 脚本的工作原理。

所以你的选择是:a)找到一个已经有这个功能的不同的词云脚本 b)编写你自己的更新云的 JS 脚本。(如果他们有的话,也许会将更改推送到原始的 github 存储库?)

于 2014-03-27T13:01:12.560 回答