首页 > 编程语言 >python wordcloud生成词云

python wordcloud生成词云

时间:2023-11-22 15:58:55浏览次数:38  
标签:不在意 python 魔法 默认 wordcloud 词云 宇宙 有趣

#!/usr/bin/env python
# coding:utf-8

# pip install wordcloud
# pip install matplotlib
import wordcloud
import matplotlib.pyplot as plt
import numpy as np
from PIL import Image

text = """给你一瓶魔法药水
喝下去就不需要氧气
给你一瓶魔法药水
喝下去就不怕身体结冰
轻轻念着你懂的咒语
一扇门就通往银河系
给你一瓶魔法药水
我们一起去太空旅行
宇宙的有趣我才不在意
我在意的是 你牵我的手 而乱跳的心
宇宙的有趣我才不在意
我在意的是 你想跟着我 去月球谈
拥有你 就不需要魔法给的勇气
轻轻念着你懂的咒语
一扇门就通往银河系
给你一瓶魔法药水
我们一起去太空旅行
宇宙的有趣我才不在意
我在意的是 你牵我的手 而乱跳的心
宇宙的有趣我才不在意
我在意的是 你想跟着我 去月球谈心
宇宙的有趣我才不在意
我在猜的是 前方的距离 几步走到你
宇宙的有趣我才不在意
我期待的是 今天的晚餐 你想吃哪里
拥有你就不需要魔法给的勇气
你走的方向最后到哪去
可能是火星或者是金星
不管多远多近多累都没关系
我的魔法只对你偏心
我偏心
我偏心
宇宙的有趣我才不在意
我在意的是 你牵我的手 而乱跳的心
宇宙的有趣我才不在意
我在意的是 你想跟着我 去月球谈心
宇宙的有趣我才不在意
我在猜的是 奔跑的距离 几步走到你
宇宙的有趣我才不在意
我期待的是 今天的晚餐 你想吃哪里
有你在
就不需要魔法给的勇气
"""

'''
wordcloud:参数

width	词云对象生成图片的宽度,默认400像素
height	词云对象生成图片的高度,默认200像素
min_font_size	词云中字体的最小字号,默认4号
max_font_size	词云中字体的最大字号,根据高度自动调节
font_step	词云中字体字号的步进间隔,默认为1
font_path	字体文件的路径,默认None
max_words	词云显示的最大单词数量,默认200
stop_words	词云的排除词列表,即不显示的单词列表
mask	词云形状,默认为长方形,需要引用imread()函数
background_color	词云图片的背景颜色,默认为黑色

'''


# 获取形状
# mask = np.array(Image.open('img/3.png'))


# 设置停用词
stopwords = set(["魔法", "宇宙", "有趣", "勇气"])

# 设置词云对象
wc = wordcloud.WordCloud(width=800, height=800, background_color='white',colormap='viridis', stopwords=set(stopwords)).generate(text)

# 绘制词云
plt.figure(figsize=(8, 8), facecolor=None)
plt.imshow(wc)
plt.axis("off")
plt.tight_layout(pad=0)

# 显示词云
plt.show()

 

中文乱码解决

使用wordColud设计词云的时候可能会产生乱码问题,因为wordColud默认的字体不支持中文,所以我们只需要替换wordColud的默认字体即可正常显示中文。

1、中文词云乱码

我们使用simhei(黑体)来替换wordColud的默认字体。

2、替换默认字体

C:\Windows\Fonts

 

a、在C:\Windows\Fonts目录黑体 常规(simhei.tff)拷贝到wordColud安装的文件夹中,文件夹路径:anaconda(python)-->lib-->site-packages-->wordcolud,如下图:

 b、修改wordcolud.py文件中的字体设置,打开改路径下的wordcolud.py文件,找到下图的所示的框出来的将DroidSansMono.ttf修改为simhei.ttf

 

标签:不在意,python,魔法,默认,wordcloud,词云,宇宙,有趣
From: https://www.cnblogs.com/boye169/p/17849193.html

相关文章

  • Python全局解释器锁GIL机制
    全局解释器锁GlobalInterpreterLock,CPython在解释器级别的一把锁,叫GIL全局解释器锁。程序编译成字节码,程序想跑多线程,但是GIL保证CPython进程中,同一时刻只能有一个线程执行字节码。所以,哪怕是在多CPU的情况下,即使每个线程恰好调度到了每个CPU上,有了这把大锁,同时只能有一个CPU......
  • 《最新出炉》系列初窥篇-Python+Playwright自动化测试-32-JavaScript的调用执行-下篇
    1.简介 在实际工作中,我们需要对处理的元素进行高亮显示,或者有时候为了看清楚操作过程和步骤我们需要跟踪鼠标点击了哪些元素需要标记出来。虽然很少遇到,但是为了以后大家可以参考或者提供一种思路,今天宏哥就在这里把这种测试场景playwright是如何处理的讲解和分享一下。2.用法......
  • [951] Understanding the pattern of "(.*?)" in Python's re package
    InPython'sregularexpressions, (.*?)isacapturinggroupwithanon-greedyquantifier. Let'sbreakdownthecomponents:(and ):Parenthesesareusedtocreateacapturinggroup.Thisallowsustocaptureaportionofthematchedtext..*?:......
  • [950] Python RegEx (re library)
    ref:PythonRegExARegEx,orRegularExpression,isasequenceofcharactersthatformsasearchpattern.RegExcanbeusedtocheckifastringcontainsthespecifiedsearchpattern.RegExModulePythonhasabuilt-inpackagecalled re,whichcanbeu......
  • 19.python 创建一个本地web服务器
    编写一个server.py文件1importhttp.server2importsocketserver34PORT=800056Handler=http.server.SimpleHTTPRequestHandler78withsocketserver.TCPServer(("",PORT),Handler)ashttpd:9print("Serverstartedatlocalhos......
  • 聪明办法学python
    数据类型:整数(int)         浮点数(float)         布尔值(bool):truefalse         类型(type):print(type(2)) print(type(2.2))  print(type(2<2.2))         isinstance(a,int)常数:truefalsenone......
  • 大数据开发要学什么java还是python?
    在大数据开发领域,Java和Python都是备受青睐的编程语言。它们分别具有各自独特的特点和优势,在大数据处理方面也有不同的应用场景。以下是对Java和Python在大数据开发中的应用、优势以及学习建议的详细描述。Java在大数据开发中的应用和优势1.应用场景Hadoop生态圈:Java广泛......
  • Python在使用pandas时内存使用过大导致服务器宕机,有哪些优化方法?
    当使用pandas处理大规模数据时,内存使用量可能会迅速增加,导致服务器宕机。为了解决这个问题,可以采用以下几个优化方法:数据类型优化:使用更小的数据类型,例如将int64转换为int32或int16,节省内存空间。对于字符串类型,尽量使用'category'类型,它会使用更少的内存。分块处理:使......
  • python+pytest写测试用例后置清理数据操作
    一、teardown_function函数是为了在每个测试函数def执行后进行数据清理。#引入DbConnect类或者确保它已经被定义fromyour_db_moduleimportDbConnectdefteardown_function():try:print("后置操作-做数据清理,把批注通知删掉")db......
  • Java开发者的Python快速进修指南:文件操作
    Python提供的文件操作相对于Java来说,确实简单方便许多。不仅操作简单,代码可读性也相对较高。然而,我们需要注意的不仅仅是文件操作的简单性,还有文件操作的各种模式。在Java中,我们并不经常使用像Python中那样的操作模式。另外,我们还需要注意文件指针的移动。无论是Java还是Python,文......