Resumo da tecnologia de gráfico de nuvem de palavras ---- visualização de big data

# -*- coding: utf-8 -*-

Esta linha de código especifica que o formato de codificação do arquivo de origem Python é UTF-8. Isso garante que nenhum problema de codificação ocorrerá ao ler e processar arquivos contendo caracteres chineses.

import jieba
import matplotlib.pyplot as plt
import matplotlib.colors as colors
from wordcloud import WordCloud, STOPWORDS
from PIL import Image
import numpy as np

Este código importa as bibliotecas python necessárias. jieba é usado para biblioteca de segmentação de palavras chinesas, matplotlib.pyplot, matplotlib.colors são usados ​​para desenhar gráficos e mapeamento de cores, e WordCloud é usado para gerar diagramas de nuvem de palavras. STOPWORDS é uma coleção usada para filtrar palavras sem sentido, PIL é uma biblioteca de imagens Python usada para abrir e processar imagens e numpy é usado para processar dados de imagens.

text = open("text.txt", encoding='utf-8').read()
text = text.replace('\n', "").replace("\u3000", "")
text_cut = jieba.lcut(text)
text_cut = ' '.join(text_cut)

Esses códigos são utilizados para ler o arquivo “text.txt” que contém o texto do artigo e armazená-lo na variável texto. Ao mesmo tempo, o programa usa a função replace() para excluir caracteres de nova linha e caracteres de espaço especiais no artigo. Em seguida, o programa utiliza a biblioteca jieba para segmentar o artigo e salvar os resultados da segmentação na lista text_cut. Finalmente, o programa converte a lista text_cut em uma string para processamento posterior.

stopwords = set()
content = [line.strip() for line in open('hit_stopwords.txt', 'r').readlines()]
stopwords.update(content)

Esses códigos são utilizados para ler o arquivo "hit_stopwords.txt" contendo palavras sem sentido e salvá-lo na coleção de stopwords. Primeiro, o programa cria uma coleção vazia de palavras irrelevantes. O programa então usa um loop for para ler cada linha do arquivo e usa a função strip() para remover espaços no final da linha. Finalmente, o programa usa a função update() para adicionar todas as palavras sem sentido à coleção de palavras irrelevantes.

background = Image.open("dnn.jpg").convert('RGB')
graph = np.array(background)
colormaps = colors.ListedColormap(['#FF0000', '#FF7F50', '#FFE4C4'])
wordcloud = WordCloud(scale=4,
                      font_path="C:/Windows/Fonts/simhei.ttf",
                      background_color="white",
                      mask=graph,
                      colormap=colormaps,
                      relative_scaling=0.1,
                      stopwords=stopwords).generate(text_cut)

Esses códigos são usados ​​para gerar gráficos de nuvem de palavras. Primeiro, o programa usa a biblioteca PIL para abrir a imagem chamada “dnn.jpg” e convertê-la para o formato RGB. Em seguida, o programa usa a biblioteca numpy para converter a imagem em um formato de array e salva-a no gráfico variável. Esta imagem servirá de fundo para a imagem da nuvem de palavras. Em seguida, o programa cria um objeto de nuvem de palavras chamado wordcloud e define alguns parâmetros, incluindo:
escala: a proporção de escala da imagem da nuvem de palavras. font_path: O caminho para o arquivo de fonte usado para exibir caracteres chineses. background_color: imagem de nuvem de palavras

Acho que você gosta

Origin blog.csdn.net/m0_56898461/article/details/130174057
Recomendado
Clasificación