首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在文字云中盘旋

如何在文字云中盘旋
EN

Stack Overflow用户
提问于 2014-02-07 11:24:17
回答 1查看 2.4K关注 0票数 0

我使用python模块(pytagcloud)从文本文件中创建了一个word云,但我将其创建为.jpeg文件。但是,当我将光标悬停在云中的单词上时,我想让云中的单词处于活动状态。当我点击单词云中的特定单词时,文章中相应的句子应该是highlighted.How来做吗?请帮帮我。我在这个题目上有项目工作。我创建了一个gui,在其中我有导入文本文件和读取文本文件的选项。在读取文本文件之后,我需要从.txt文件中的段落中生成单词云。

代码语言:javascript
复制
def wordcloud(self):

        from pytagcloud import create_tag_image, create_html_data, make_tags, LAYOUT_HORIZONTAL, LAYOUTS, LAYOUT_MIX, LAYOUT_VERTICAL, LAYOUT_MOST_HORIZONTAL, LAYOUT_MOST_VERTICAL
        from pytagcloud.lang.counter import get_tag_counts
        from pytagcloud.colors import COLOR_SCHEMES
        import webbrowser

        #import Tkinter
        #from tkFileDialog import askopenfilename
        #filename=askopenfilename()

        #with open(filename,'r') as f:
        #    text=f.read()

        #def create_tag_cloud(text):
        words = nltk.word_tokenize(self._contents)
        doc = " ".join(d for d in words[:70])
        tags = make_tags(get_tag_counts(doc), maxsize=100)
        create_tag_image(tags, 'sid.jpeg',size=(1600, 1200),fontname='Philosopher',layout=LAYOUT_MIX,rectangular=True)
        webbrowser.open('sid.jpeg')
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-02-07 11:29:07

没有看到您的代码,就没有什么需要纠正的了。

但是,最好的方法是在HTMLCSS中输出标记云,这样您就可以结束类似于他们的演示。的东西了。

在您有了HTML代码之后,一种方法是使用Javascript对单击的单词做出反应,并突出显示在您体内出现的每个单词。

然而,还有许多其他方法可能更适合,但如果没有任何上下文,恐怕是不可能评论的。尽管如此,不要将标记云呈现为jpeg。这是静态的,没有交互的能力。

Edit1:提供的代码

查看github上可用的test_create_html_data(self):函数,了解如何输出HTMLCSS

只要简单介绍一下您的代码,Python就会在每次运行wordcloud()方法时导入所有这些包。把它们拉出来做这样的事情(我为你启动了适应):

代码语言:javascript
复制
from pytagcloud import (create_tag_image, create_html_data, 
    make_tags, LAYOUT_MIX)
from pytagcloud.lang.counter import get_tag_counts
from pytagcloud.colors import COLOR_SCHEMES
import webbrowser

# ...the rest of your code...

def wordcloud(self):
    words = nltk.word_tokenize(self._contents)
    doc = " ".join(d for d in words[:70])

    tags = make_tags(get_tag_counts(doc), maxsize=100)
    data = create_html_data(tags, (1600,1200), layout=LAYOUT_MIX, fontname='Philosopher', rectangular=True)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21626488

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档