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()

  • 相关阅读:
    aws 计费查询
    关于网络抖动
    word2vec和onehot
    缺少了目标的教育是彻底的失败
    做事要风险控制
    SPS中计算值公式函数简介
    Moss + InfoPath 表单工作流开发要点
    【译】What is the NDK? (2)
    【译】What is the NDK? (1)
    【译】Android平台上的Flex开发(3) 在桌面和移动设备上测试
  • 原文地址:https://www.cnblogs.com/huangmouren233/p/14909571.html
Copyright © 2011-2022 走看看