Python_制作中文词云

准备工作:

安装 jieba 中文分词工具

安装 wordcloud 词云生成工具

下载地址:https://www.lfd.uci.edu/~gohlke/pythonlibs/

在命令行执行: pip install name.whl 完成安装

准备txt文档一份,准备词云形状背景一张, 我直接从网上查询复制李白诗歌几首如下:


李白 李白 李白 李白 李白 李白 李白 李白 李白 李白 李白 李白
君不见黄河之水天上来,奔流到海不复回。
君不见高堂明镜悲白发,朝如青丝暮成雪。
人生得意须尽欢,莫使金樽空对月。
天生我材必有用,千金散尽还复来。
烹羊宰牛且为乐,会须一饮三百杯。
岑夫子,丹丘生,将进酒,杯莫停。
与君歌一曲,请君为我侧耳听。
钟鼓馔玉不足贵,但愿长醉不复醒。
古来圣贤皆寂寞,惟有饮者留其名。
陈王昔时宴平乐,斗酒十千恣欢谑。
主人何为言少钱,径须沽取对君酌。
五花马,千金裘,
呼儿将出换美酒,与尔同销万古愁。
床前明月光,疑是地上霜。
举头望明月,低头思故乡。
海客谈瀛洲,烟涛微茫信难求。
越人语天姥,云霞明灭或可睹。
天姥连天向天横,势拔五岳掩赤城。
天台四万八千丈,对此欲倒东南倾。
我欲因之梦吴越,一夜飞度镜湖月。
湖月照我影,送我至剡溪。
谢公宿处今尚在,渌水荡漾清猿啼。
脚著谢公屐,身登青云梯。
半壁见海日,空中闻天鸡。
千岩万转路不定,迷花倚石忽已暝。
熊咆龙吟殷岩泉,栗深林兮惊层巅。
云青青兮欲雨,水澹澹兮生烟。
列缺霹雳,丘峦崩摧。洞天石扉,訇然中开。
青冥浩荡不见底,日月照耀金银台。
霓为衣兮风为马,云之君兮纷纷而来下。
虎鼓瑟兮鸾回车,仙之人兮列如麻。
忽魂悸以魄动,恍惊起而长嗟。
惟觉时之枕席,失向来之烟霞。
世间行乐亦如此,古来万事东流水。
别君去兮何时还,且放白鹿青崖间,
须行即骑访名山。安能摧眉折腰事权贵,
使我不得开心颜。


准备工作完成后即可进行词云生成:

# coding: utf-8


from wordcloud import WordCloud
import cv2
import jieba


with open('tmp.txt','r') as f:
    text = f.read()

cut_text =" ".join(jieba.cut(text))

color_mask = cv2.imread('mask.jpg')

cloud = WordCloud(
       #设置字体,不指定就会出现乱码
       font_path=" C:\\Windows\\Fonts\\STXINGKA.TTF",
       #font_path=path.join(d,'simsun.ttc'),
       #设置背景色
       background_color='white',
       #词云形状
       mask=color_mask,
       #允许最大词汇
       max_words=2000,
       #最大号字体
       max_font_size=40
   )

wCloud = cloud.generate(cut_text)
wCloud.to_file('cloud.jpg')

import matplotlib.pyplot as plt
plt.imshow(wCloud, interpolation='bilinear')
plt.axis('off')
plt.show()

最终生成的词云如下:

只要替换成自己的文本和背景模板,就可以生成不同的词云。

Python是一门流行的编程语言,有许多强大的库和工具可以用来处理中文文本数据,其中包括中文分词和词云制作中文分词是将中文文本按照词语划分成一个个单独的词汇,是自然语言处理领域的重点问题之一。在Python中,最常用的中文分词库是jieba库。下面是一个简单的中文分词例子: ```python import jieba text = "我喜欢用Python做自然语言处理" words = jieba.cut(text) for word in words: print(word) ``` 这段代码将会输出分词后的结果: ``` 我 喜欢 用 Python 做 自然语言处理 ``` 接下来是词云制作词云是一种用来展示文本数据的可视化图形,它将文本中出现频率高的关键词以不同的字体大小和颜色呈现在图形中。在Python中,我们可以使用wordcloud库来制作词云。下面是一个简单的词云制作例子: ```python from wordcloud import WordCloud import jieba text = "我喜欢用Python做自然语言处理" # 使用jieba进行中文分词 words = jieba.cut(text) words_list = " ".join(words) # 生成词云 wordcloud = WordCloud(width=800, height=600, background_color="white").generate(words_list) # 保存词云图片 wordcloud.to_file("wordcloud.png") ``` 这段代码将会生成一张名为wordcloud.png的词云图片。如果你想要将词云显示在Jupyter Notebook中,可以使用下面的代码: ```python from IPython.display import Image Image(filename="wordcloud.png") ``` 这样就可以在Jupyter Notebook中显示词云图片了。 以上就是用Python中文分词和词云制作的简单例子,希望能对你有所帮助!
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值