我是Wordle的创造者.这是Wordle实际工作的方式:
计算单词,扔掉无聊的单词,然后按计数排序,降序.保留前N个单词为N.为每个单词指定与其计数成比例的字体大小.使用Java2D API为每个单词生成Java2D形状.
每个单词"想要"在某个地方,例如"在垂直中心的某个随机x位置".按频率降序排列,对每个单词执行以下操作:
place the word where it wants to be while it intersects any of the previously placed words move it one step along an ever-increasing spiral
而已.该硬的部分是在做交叉点测试有效,为此,我用最后命中缓存,层次包围盒,四叉树空间索引(所有这些事情你可以了解一些勤奋使然).
编辑:正如Reto Aebersold指出的那样,现在有一本免费提供的书籍章节涵盖了同一领域:美丽的可视化,第3章:Wordle
我是Wordle的创造者.这是Wordle实际工作的方式:
计算单词,扔掉无聊的单词,然后按计数排序,降序.保留前N个单词为N.为每个单词指定与其计数成比例的字体大小.使用Java2D API为每个单词生成Java2D形状.
每个单词"想要"在某个地方,例如"在垂直中心的某个随机x位置".按频率降序排列,对每个单词执行以下操作:
place the word where it wants to be while it intersects any of the previously placed words move it one step along an ever-increasing spiral
而已.该硬的部分是在做交叉点测试有效,为此,我用最后命中缓存,层次包围盒,四叉树空间索引(所有这些事情你可以了解一些勤奋使然).
编辑:正如Reto Aebersold指出的那样,现在有一本免费提供的书籍章节涵盖了同一领域:美丽的可视化,第3章:Wordle
我已经实现了Jonathan Feinberg所描述的算法,使用python创建了一个标签云.它远离wordle.net的美丽云彩,但它让你知道如何做到这一点.
你可以在这里找到这个项目.
这是来自Jason Davies使用d3的非常好的javascript.你甚至可以使用webfonts.
演示:http: //www.jasondavies.com/wordcloud/
Github:https: //github.com/jasondavies/d3-cloud
我创建了一个使用Jonathan在此建议的算法的Silverlight组件.我的博客上提供了源代码和示例项目:
http://whydoidoit.com
我的云可让您根据不同的权重对单词进行着色和调整大小,并支持单词选择(从坐标)和选定的单词突出显示.您可以根据需要使用该来源.
我正在使用WordCram,一个用于制作文字云的Processing库.它受Wordle的影响非常大,并且通过与上面链接的相同的PDF aeby进行通知.它可以为您处理碰撞检测,让您专注于您希望如何布置,着色,旋转等.
http://code.google.com/apis/visualization/documentation/gallery.html
查看单词云可视化.不像wordle.net那么华丽,但很容易添加到您的网站.
我正在寻找一个类似于wordle的可视化,它可以分配与其他数据相关的字符串的颜色,初始位置和大小,例如文本中的相关性 - 没有找到任何内容,但是由于我在这里找到的信息(特别是Jonathan的解释和aeby的链接),我终于可以实现' Cloudio ',它与wordle相比非常接近(至少我认为是这样......)并提供我正在寻找的功能.
它是用SWT和JFace实现的,我试图将它集成到JFace的MVC模型中,这样你就可以设置内容和标签提供者来修改云的布局并将其添加到其他Eclipse插件或RCP中应用.您还可以修改计算字符串初始位置的方式,这样就不难将其用于集群可视化.它仍然记录不清,并且在某些方面受到限制(几小时前我做了初始上传,所以它可能仍然有点儿错误),但如果你感兴趣,请点击链接:
这里是一些创建云的链接,以防您需要快速印象:https://github.com/sschwieb/Cloudio/wiki/Example-Clouds
干杯,斯蒂芬
这里看到我像Word一样实现Wordle.它使用相同的螺旋算法和QuadTree数据结构.
http://sourcecodecloud.codeplex.com
要么
http://www.codeproject.com/Articles/224231/Word-Cloud-Tag-Cloud-Generator-Control-for-NET-Win