【R分享|实战】科白君以词云图祝教师节快乐

 三人行必有我师焉。” 
"R实战"专题·第15篇
  编辑 | 科白维尼
  2742字 |5分钟阅读
本期推送内容
以词云图祝全天下老师,教师节快乐。词云图主要是用来反应词库中频率较高的词,相当于寻找关键词,通常会用来做前提的调研(判断研究方向的热点等等)。接下来,我在execl手动导入了70条教师节祝福语,包含中英文(毕竟国内外都有老师),并编写代码完成词云图的绘制。

直奔主题,上代码:

#install.packages('jiebaR')
#install.packages('wordcloud')
#install.packages('wordcloud2')
#install.packages('webshot')
#install.packages('htmlwidgets')
library(jiebaR)
library(wordcloud)
library(wordcloud2)
library(webshot)
webshot::install_phantomjs() #首次使用需要执行,主要用于导出viewer中的图像
library(htmlwidgets)

setwd("c:/Users/Zz/Desktop") #设置工作路径

zhufu <- readLines("zhufu.txt",encoding ="gbk") #按行导入70条祝福
 
seg <- qseg[zhufu] #使用qseg类型分词,并把结果保存到对象seg中

seg <- table(seg) #统计词频

seg <- seg[!grepl('[0-9]+',names(seg))] #去除数字

length(seg) #查看处理完后剩余的词数

seg <- sort(seg, decreasing = TRUE)[1:100] #降序排序,并提取出现次数最多的前100个词语

seg #显示如下

#绘制词云图并且赋值给my_cloud
my_cloud <- wordcloud2(seg, size = 1, shape = 'cardioid',
  color = ifelse(seg > 20, 'red', 'skyblue')) #cardioid 表示词云以心形为背景,可以通过?wordcloud2看看对应参数的解释

# 由于词云的图生成区域在viewer,以下的方法来保存导出图片
saveWidget(my_cloud,"tmp.html",selfcontained = F) #先保存为网页格式
webshot("tmp.html","wordcloud.jpg", delay = 3,vwidth = 1000, vheight=1000) #在依据网页格式生成jpg图片格式
#其中“delay =”设置在保存图片之前需要等待的时间(单位:秒),这主要是因为字云图要完全显示出绘制的单词时间较慢,需要等到,需要依据显示的单词数量合理设置;
#“vwidth =”和“ vheight=”指定保存时的高宽

运行结果如下图:

欢迎各位进群交流学习,共同进步。

(0)

相关推荐