Python学习Day13——词云掩膜应用

import wordcloud
import jieba
import matplotlib
#s数字绘图库
'''w=wordcloud.WordCloud()
txt="My Heart is always with You I Love Chaina "
w.generate(txt)
w.to_file("E:/OpenCVTests/01.png")
'''
#import imageio
#from scipy import misc
from matplotlib.pyplot import imread
#需要安装scipy库,未成功
mask1=imread("E:/OpenCVTests/1.jpg")#尝试了几次,发现只能试.jpg格式的——————且白色部分为遮罩,其他色块颜色显露出来
                                #与下边代码中的mask=mask三句代码能够设置词云的输出形状
f=open("E:/OpenCVTests/Government.txt","r",encoding="utf-8")
t=f.read()
f.close
ls=jieba.lcut(t)#利用jieba库对汉字进行拆分,拆分成词语
txt=" ".join(ls)#将各个词语之间加如空格进行
w=wordcloud.WordCloud(width=1000,height=700,
                      max_words=150,
                      background_color="white",
                      mask=mask1,
                      font_path="C:/Windows/Fonts/simkai.ttf")#对于中文文件时,一定要指定字体,否则会乱码
w.generate(txt)
w.to_file("E:/OpenCVTests/08.png")

'''font_path表示用到字体的路径
width和height表示画布的宽和高
prefer_horizontal可以调整词云中字体水平和垂直的多少
mask即掩膜,产生词云背景的区域
scale:计算和绘图之间的缩放
min_font_size设置最小的字体大小
max_words设置字体的多少
stopwords设置禁用词
background_color设置词云的背景颜色
max_font_size设置字体的最大尺寸
mode设置字体的颜色 但设置为RGBA时背景透明
relative_scaling设置有关字体大小的相对字频率的重要性
regexp设置正则表达式
collocations 是否包含两个词的搭配
在generate函数中调试进去可以看到函数:
words=process_text(text)可以返回文本中的词频
generate_from_frequencies根据单词和词频创造一个词云
'''

在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python中,你可以使用`wordcloud`库和`matplotlib`库来创建美观的菱形图。`wordcloud`是一个流行的库,用于生成图像,而`matplotlib`则提供了丰富的绘图功能。以下是一个简单的步骤来创建菱形: 1. 首先,确保你已经安装了`wordcloud`和`matplotlib`库,如果没有,可以通过`pip install wordcloud matplotlib`命令来安装。 ```python import matplotlib.pyplot as plt from wordcloud import WordCloud, STOPWORDS ``` 2. 准备数据,通常是一段文本,其中包含你想要展示的。你也可以从文件或API获取数据。 ```python text = "这里是你想要用来生成的文本内容,可以是文章、歌或其他大量的文本数据" ``` 3. 创建停用列表,以排除常见的无意义汇如“的”、“是”等。 ```python stopwords = set(STOPWORDS) ``` 4. 使用`WordCloud`类定义的样式和参数,比如形状、背景颜色、最大单大小等。 ```python wc = WordCloud( width=800, height=800, background_color="white", stopwords=stopwords, mask=np.array(Image.open("diamond_shape.png")), # 使用钻石形状的图片作为模 contour_width=3, contour_color='steelblue', ) ``` 5. 使用文本生成。 ```python wc.generate(text) ``` 6. 显示。 ```python plt.figure(figsize=(8, 8), facecolor=None) # 图像大小 plt.imshow(wc, interpolation="bilinear") plt.axis("off") # 关掉坐标轴 plt.title("菱形图", fontsize=20) plt.show() ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值