zoukankan      html  css  js  c++  java
  • 生成词云图

    生成词云图

    词云图的生成其中有很多字段

    在网上有很多的详解

    关于其中的各个字段

    然后这写字段中一些对于本项目而言

    有一些比较重要的字段需要修改

    其中就包括

    图片宽高的选取

    width=400,  # 默认宽度
    height=400, # 默认高度

     边缘的控制

    margin=0,  # 边缘
    margin=0,  # 边缘

    图片的背景

    mask_pic = numpy.array(Image.open("../img/1.jpeg"))
    mask=mask_pic,  # 背景图形,如果想根据图片绘制,则需要设置

    这个图片的背景是一个关于遮罩的设计

    你的词云图形状会根据遮罩的部分来生成

    最多显示的词汇量

    一个词汇的显示

    一张词云图中最多显示的词汇个数

    max_words=100,  # 最多显示的词汇量

    背景颜色的设置

    background_color='white',  # 背景颜色设置,可以为具体颜色,

    词汇的颜色

    colormap=colors.ListedColormap(['#09F7F7', '#00FF66', '#09F7F7']),  # matplotlib颜色主题,可更改名称,进而更改整体风格

    以上是对于本项目一些比较关键的参数设置

    然后直接生成词云图

    import numpy
    import numpy as np
    from PIL import Image
    import os
    from os import path
    from wordcloud import WordCloud, STOPWORDS, ImageColorGenerator
    from matplotlib import pyplot as plt
    from matplotlib.pyplot import figure, show, rc
    import matplotlib.colors as colors # 处理图片相关内容

    # d = path.dirname(__file__) if "__file__" in locals() else os.getcwd()
    text = open(r"../allpaper/allpaper4.txt", "r", encoding="utf-8").read()
    mask_pic = numpy.array(Image.open("../img/1.jpeg"))
    wc = WordCloud(font_path="msyh.ttc", # 字体路径,英文不用设置路径,中文需要,否则
    width=400, # 默认宽度
    height=400, # 默认高度
    margin=0, # 边缘
    ranks_only=None,
    prefer_horizontal=0.9,
    mask=mask_pic, # 背景图形,如果想根据图片绘制,则需要设置
    scale=2,
    color_func=None,
    max_words=100, # 最多显示的词汇量
    min_font_size=4, # 最小字号
    stopwords=None, # 停止词设置,修正词云图时需要设置
    random_state=None,
    background_color='white', # 背景颜色设置,可以为具体颜色,
    max_font_size=None, # 最大字号
    font_step=1,
    mode='RGB',
    relative_scaling='auto',
    regexp=None,
    collocations=True,
    colormap=colors.ListedColormap(['#09F7F7', '#00FF66', '#09F7F7']), # matplotlib颜色主题,可更改名称,进而更改整体风格
    normalize_plurals=True,
    contour_width=0,
    contour_color='black',
    repeat=False)

    wc.generate_from_text(text)
    fig = figure(figsize=(4, 4), dpi=600)
    plt.imshow(wc, interpolation='bilinear')
    plt.axis('off')
    plt.tight_layout()
    plt.savefig('ciyuntu.png')
    plt.show()

  • 相关阅读:
    4种方法帮你解决IntelliJ IDEA控制台中文乱码问题
    万字长文:解读区块链7类共识算法
    CoralCache:一个提高微服务可用性的中间件
    探究Python源码,终于弄懂了字符串驻留技术
    OAuth:每次授权暗中保护你的那个“MAN”
    厉害了!这群95后正在用三维成像技术让科幻变成现实
    华为云FusionInsight MRS在金融行业存算分离的实践
    【新春特辑】发压岁钱、看贺岁片、AI写春联……华为云社区给大家拜年了
    Java实现 蓝桥杯 算法训练 天数计算
    WebRTC框架中的硬件加速
  • 原文地址:https://www.cnblogs.com/huangmouren233/p/14909571.html
Copyright © 2011-2022 走看看