可视化代码如下。
- def creat_date(df):
- # 分组汇总
- date_message = df.groupby(['time'])
- date_com = date_message['time'].agg(['count'])
- date_com.reset_index(inplace=True)
-
- # 绘制走势图
- attr = date_com['time']
- v1 = date_com['count']
- line = Line("微博评论的时间分布", title_pos='center', title_top='18', width=800, height=400)
- line.add("", attr, v1, is_smooth=True, is_fill=True, area_color="#000", xaxis_interval=24, is_xaxislabel_align=True, xaxis_min="dataMin", area_opacity=0.3, mark_point=["max"], mark_point_symbol="pin", mark_point_symbolsize=55)
- line.render("微博评论的时间分布.html")
06 评论词云

大体上言论还算好,没有很偏激。
可视化代码如下。
- from wordcloud import WordCloud, ImageColorGenerator
- import matplotlib.pyplot as plt
- import jieba
-
-
- def create_wordcloud(df):
- """
- 生成评论词云
- """
- words = pd.read_csv('chineseStopWords.txt', encoding='gbk', sep='t', names=['stopword'])
- # 分词
- text = ''
- for line in df['comment']:
- line = line.split(':')[-1]
- text += ' '.join(jieba.cut(str(line), cut_all=False))
- # 停用词
- stopwords = set('')
- stopwords.update(words['stopword'])
- backgroud_Image = plt.imread('article.jpg')
- wc = WordCloud(
- background_color='white',
- mask=backgroud_Image,
- font_path='C:WindowsFonts华康俪金黑W8.TTF',
- max_words=2000,
- max_font_size=150,
- min_font_size=15,
- prefer_horizontal=1,
- random_state=50,
- stopwords=stopwords
- )
- wc.generate_from_text(text)
- img_colors = ImageColorGenerator(backgroud_Image)
- wc.recolor(color_func=img_colors)
- # 高词频词语
- process_word = WordCloud.process_text(wc, text)
- sort = sorted(process_word.items(), key=lambda e: e[1], reverse=True)
- print(sort[:50])
- plt.imshow(wc)
- plt.axis('off')
- wc.to_file("微博评论词云.jpg")
- print('生成词云成功!')
五、总结
最后,照例来扒一扒哪位用户评论最多。

这位男性用户,一共评论了90条,居于首位。 (编辑:惠州站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|