In Datenvisualisierungsdiagrammen ist die Anwendung von Wortwolkendiagrammen überall zu sehen. Es extrahiert normalerweise die Worthäufigkeit aus einem Eingabetext und zeigt dann hochfrequente Wörter entsprechend der Häufigkeit des Wortvorkommens an. Heute werde ich Ihnen zeigen, wie man eine exquisite Wortwolke zeichnet Diagramm in Python.
Versuchen wir zunächst, ein einfaches Wortwolkendiagramm zu zeichnen, indem wir das Wordcloud-Modul in Python verwenden, um es zu zeichnen 🎜#
import jieba from wordcloud import WordCloud import matplotlib.pyplot as plt
text = open(r"明朝那些事儿.txt",encoding='utf8').read() text = text.replace('n',"").replace("u3000","")
text_cut = jieba.lcut(text) # 将分好的词用某个符号分割开连成字符串 text_cut = ' '.join(text_cut)
# 🎜🎜#
stop_words = open(r"常见中文停用词表.txt").read().split("n")
word_cloud = WordCloud(font_path="simsun.ttc",# 设置词云字体 background_color="white", # 词云图的背景颜色 stopwords=stop_words) # 去掉的停词 word_cloud.generate(text_cut) word_cloud.to_file("1.png")
output
So ein extrem einfaches Wortwolkendiagramm ist fertig, natürlich können wir ein hinzufügen Fügen Sie ein Hintergrundbild hinzu, beispielsweise das folgende Bild:
Der Hauptcode, der hinzugefügt werden muss, lautet wie folgt: #🎜🎜 #
background = Image.open(r"5.png") graph = np.array(background)
# 使用WordCloud生成词云 word_cloud = WordCloud(font_path="simsun.ttc",# 设置词云字体 background_color="white", # 词云图的背景颜色 stopwords=stop_words, # 去掉的停词 mask=graph) word_cloud.generate(text_cut) word_cloud.to_file("1.png")
tiefe Optimierung# 🎜 🎜#
Darüber hinaus gibt es ein weiteres Modul stylecloud, das ein ebenfalls sehr cooles Wortwolkendiagramm zeichnet, von dem wir hauptsächlich die folgende Funktion verwenden.gen_stylecloud(text=None, icon_name='fas fa-flag', colors=None, palette='cartocolors.qualitative.Bold_5', background_color="white", max_font_size=200, max_words=2000, stopwords=True, custom_stopwords=STOPWORDS, output_name='stylecloud.png', )
icon_name: die Form des Wortwolkendiagramms
stylecloud.gen_stylecloud(text=text_cut, palette='tableau.BlueRed_6', icon_name='fas fa-apple-alt', font_path=r'田英章楷书3500字.ttf', output_name='2.png', stopwords=True, custom_stopwords=stop_words)
Schließlich schauen wir uns an, wie man das Pyecharts-Modul zum Zeichnen von Wortwolkendiagrammen verwendet. Der Code lautet wie folgt# 🎜🎜#
from pyecharts import options as opts from pyecharts.charts import Page, WordCloud words = [ ("皇帝", 10000), ("朱元璋", 6181), ("明朝", 4386), ("朝廷", 4055), ("明军", 2467), ("士兵", 2244), ("张居正", 1868), ("王守仁", 1281) ] c = ( WordCloud() .add("", words, word_size_range=[20, 100]) .set_global_opts(title_opts=opts.TitleOpts(title="基本示例")) ) c.render("1.html")
Das Ergebnis ist etwas einfacher, aber es ist hier erwähnenswert, dass die WordCloud() Methode in Pyecharts Durchläufe Die eingegebenen Daten sind das angegebene Wort und seine Häufigkeit. Dies unterscheidet sich von der vorherigen Operation
Das obige ist der detaillierte Inhalt vonIch habe Python verwendet, um mehrere Wortwolkendiagramme zu zeichnen, was alle verblüffte. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!