词云 -python

词云

  • juzi.txt:数据源,默认txt
  • bg1.jpg:词云呈现
  • simsun.ttc:宋体字体
  • wordcloud.png:词云保存
    词云 -python
from wordcloud import WordCloud  # 词云
import matplotlib.pyplot as plt  # 画布
import jieba.analyse  # 分级级别权重
import imageio  # 图片
import jieba  # 分词

def worldCloud():
        # 1.读入txt文本数据
        text = open(r'lib/juzi.txt', encoding='utf-8-sig').read()
        # 2.结巴中文分词,生成字符串,默认精确模式,如果不通过分词,无法直接生成正确的中文词云
        cut_text = jieba.cut(text)
        # 必须给个符号分隔开分词结果来形成字符串,否则不能绘制词云
        result = " ".join(cut_text)
        # 3.生成词云图,这里需要注意的是WordCloud默认不支持中文,所以这里需已下载好的中文字库
        # 无自定义背景图:需要指定生成词云图的像素大小,默认背景颜色为黑色,统一文字颜色:mode='RGBA'和colormap='pink'
        color_mask = imageio.imread(r"lib/bg1.jpg")
        wc = WordCloud(
                # 设置字体,不指定就会出现乱码
                font_path="lib/simsun.ttc",  # 使用字体
                # 设置背景色
                background_color='white',
                # 设置背景宽
                width=1920,
                # 设置背景高
                height=1080,
                # 最大字体  最终图片圆润度
                max_font_size=50,
                # 最小字体 最终图片圆润度
                min_font_size=5,
                mode='RGBA',
                # colormap='pink'
                mask=color_mask)
        # 产生词云
        wc.generate(result)
        # 保存图片
        wc.to_file(r"lib/wordcloud.png")  # 按照设置的像素宽高度保存绘制好的词云图,比下面程序显示更清晰
        # 4.显示图片
        # 指定所绘图名称
        plt.figure("jay")
        # 以图片的形式显示词云
        plt.imshow(wc)
        # 关闭图像坐标系
        plt.axis("off")
        plt.show()
if __name__ == '__main__':
    worldCloud()
上一篇:Linux下使用DD命令测试磁盘读写速度


下一篇:全栈工程师就是一棵歪脖子树