Maison  >  Article  >  développement back-end  >  Comment générer un graphique de nuage de mots à l'aide de l'interface ECharts et Python

Comment générer un graphique de nuage de mots à l'aide de l'interface ECharts et Python

王林
王林original
2023-12-17 19:24:09692parcourir

Comment générer un graphique de nuage de mots à laide de linterface ECharts et Python

Comment utiliser les interfaces ECharts et Python pour générer des diagrammes de nuages ​​de mots

Introduction :
Avec l'avènement de l'ère du Big Data, la visualisation des données est devenue un élément indispensable de l'analyse des données. En tant que méthode courante de visualisation de données, le graphique en nuage de mots présente des avantages uniques pour afficher la distribution et la corrélation des mots chauds dans les données textuelles. Cet article expliquera comment utiliser les interfaces ECharts et Python pour générer des diagrammes de nuages ​​de mots et fournira des exemples de code spécifiques.

1. Préparation :
Avant de commencer, nous devons installer les bibliothèques liées à ECharts et Python. Tout d'abord, nous devons installer ECharts via la commande suivante :

npm install echarts

Ensuite, nous devons installer la bibliothèque pyecharts en Python, qui peut être complétée via la commande suivante :

pip install pyecharts

Une fois l'installation terminée, nous devons également installer la bibliothèque jieba pour la segmentation des mots chinois peut être installée via la commande suivante :

pip install jieba

2. Traitement des données :
Avant de générer le graphique du nuage de mots, nous devons traiter et prétraiter les données textuelles à analyser. Tout d'abord, lisez les données texte en Python. Vous pouvez utiliser la fonction read_csv() dans la bibliothèque pandas pour lire les données texte. Ensuite, nous devons effectuer une segmentation de mots chinois sur les données texte. Ici, nous utilisons la bibliothèque jieba pour gérer la tâche de segmentation de mots. Le code spécifique est le suivant :

import pandas as pd
import jieba

# 读取文本数据
data = pd.read_csv('data.csv', encoding='utf-8')

# 对文本进行分词
def cut_words(text):
    return " ".join(jieba.cut(text))

# 应用分词函数
data['segment'] = data['text'].apply(cut_words)

# 保存分词后的数据
data.to_csv('segment_data.csv', encoding='utf-8', index=False)

Dans le code ci-dessus, les données texte sont stockées sous forme de fichier data.csv et les données traitées sont stockées sous forme de fichier segment_data.csv.

3. Générer un graphique de nuage de mots :
Après avoir terminé le prétraitement des données, nous pouvons commencer à générer un graphique de nuage de mots. Ici, nous utiliserons le composant WordCloud de la bibliothèque pyecharts pour générer un graphique de nuage de mots. Le code spécifique est le suivant :

from pyecharts.charts import WordCloud
from pyecharts import options as opts

# 读取分词后的数据
segment_data = pd.read_csv('segment_data.csv', encoding='utf-8')['segment'].tolist()

# 统计词频
word_count = {}
for text in segment_data:
    words = text.split()
    for word in words:
        if word in word_count:
            word_count[word] += 1
        else:
            word_count[word] = 1

# 生成词云图
wordcloud = (
    WordCloud()
    .add("", list(word_count.items()), word_size_range=[20, 100])
    .set_global_opts(title_opts=opts.TitleOpts(title="词云图"))
)

# 保存词云图
wordcloud.render('wordcloud.html')

Dans le code ci-dessus, nous lisons d'abord les données de segmentation des mots, puis comptons la fréquence des mots de chaque mot. Ensuite, utilisez le composant WordCloud pour générer un graphique en nuage de mots et définissez le titre sur « Graphique en nuage de mots ». Enfin, enregistrez le graphique du nuage de mots généré sous forme de fichier wordcloud.html.

4. Afficher le graphique du nuage de mots :
Après avoir généré le graphique du nuage de mots, nous pouvons afficher les résultats sur la page Web, ce qui peut être obtenu à l'aide du framework Flask. Le code spécifique est le suivant :

from flask import Flask, render_template

app = Flask(__name__)

@app.route("/")
def index():
    return render_template('wordcloud.html')

if __name__ == "__main__":
    app.run()

Dans le code ci-dessus, nous avons créé une application simple basée sur le framework Flask Lorsque vous accédez au répertoire racine dans le navigateur, le diagramme de nuage de mots généré s'affiche.

Conclusion :
Cet article présente les étapes spécifiques d'utilisation des interfaces ECharts et Python pour générer des diagrammes de nuages ​​de mots et fournit des exemples de code correspondants. En maîtrisant ces connaissances de base, nous pouvons mieux utiliser les outils de visualisation de données pour afficher les caractéristiques et les corrélations des données textuelles et fournir une référence plus intuitive pour l'analyse des données. J'espère que cet article vous aidera !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn