R可視化之美之科研繪圖-20.詞云圖

本內容為【科研私家菜】R可視化之美之科研繪圖系列課程

快來收藏關注【科研私家菜】


01 詞云圖

詞云圖( word cloud chart)是通過使每個字的大小與其出現(xiàn)頻率成正比侨把,顯示不同單詞在給定文本中的出現(xiàn)頻率,然后將所有的字詞排在一起航揉,形成云狀圖案惰爬,也可以任何格式排列:水平線、垂直列或其他形狀辜王,如圖3-9-1所示劈狐。其也可用于顯示獲分配元數(shù)據(jù)的單詞。在詞云圖上使用顏色通常都是毫無意義的呐馆,主要是為了美觀肥缔,但我們可以用顏色對單詞進行分類或顯示另一個數(shù)據(jù)變量。詞云圖通常用于網(wǎng)站或博客上汹来,以描述關鍵字或標簽使用续膳,也可用來比較兩個不同的文本改艇。


library(tm)
library(wordcloud)

Paper1<-paste(scan("Paper1.txt", what = character(0),sep = ""), collapse = " ") #讀入TXT 文檔1
Paper2<-paste(scan("Paper2.txt", what = character(0),sep = ""), collapse = " ") #讀入TXT 文檔2
tmpText<- data.frame(c(Paper1, Paper2),row.names=c("Text1","Text2"))
df_title <- data.frame(doc_id=row.names(tmpText),
                       text=tmpText$c.Paper1..Paper2.)
ds <- DataframeSource(df_title)
#創(chuàng)建一個數(shù)據(jù)框格式的數(shù)據(jù)源,首列是文檔id(doc_id),第二列是文檔內容
corp <- VCorpus(ds)
#加載文檔集中的文本并生成語料庫文件
corp<- tm_map(corp,removePunctuation) #清除語料庫內的標點符號
corp <- tm_map(corp,PlainTextDocument) #轉換為純文本
corp <- tm_map(corp,removeNumbers) #清除數(shù)字符號
corp <- tm_map(corp, function(x){removeWords(x,stopwords())}) #過濾停止詞庫
term.matrix <- TermDocumentMatrix(corp)
#利用TermDocumentMatrix()函數(shù)將處理后的語料庫進行斷字處理坟岔,生成詞頻權重矩陣

term.matrix <- as.matrix(term.matrix) #頻率
colnames(term.matrix) <- c("Paper1","paper2")
df<-data.frame(term.matrix)
write.csv(df,'term_matrix.csv') #導出兩篇文章的頻率分析結果

df<-read.csv('term_matrix.csv',header=TRUE,row.names=1)
#Colors<-colorRampPalette(rev(brewer.pal(9,'RdBu')))(length(df$Paper1>10))
wordcloud(row.names(df) , df$Paper1 , min.freq=10,col=brewer.pal(8, "Dark2"), rot.per=0.3 )

效果如下:


02 兩份數(shù)據(jù)的對比


comparison.cloud(df, max.words=300, random.order=FALSE, rot.per=.15, c(4,0.4), title.size=1.4)

comparison.cloud(df,max.words=300,random.order=FALSE,colors=c("#00B2FF", "red"))
commonality.cloud(df,max.words=100,random.order=FALSE,color="#E7298A")

# comparison cloud
comparison.cloud(df, random.order=FALSE, 
                 colors = c("#00B2FF", "red", "#FF0099", "#6600CC"),
                 title.size=1.5, max.words=500)

效果如下:

注意事項:

詞云圖雖然簡單易懂,但有著一些缺點:
(1)較長的字詞會更引人注意;
( 2)字母含有很多升部/降部的單詞可能會更受人關注;
(3)分析精度不足谒兄,主要是為了美觀。


參考資料

《R語言數(shù)據(jù)可視化之美》

關注R小鹽社付,關注科研私家菜(溦?工眾號: SciPrivate)承疲,有問題請聯(lián)系R小鹽。讓我們一起來學習 R可視化之美之科研繪圖

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末鸥咖,一起剝皮案震驚了整個濱河市燕鸽,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌扛或,老刑警劉巖绵咱,帶你破解...
    沈念sama閱讀 206,126評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異熙兔,居然都是意外死亡悲伶,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,254評論 2 382
  • 文/潘曉璐 我一進店門住涉,熙熙樓的掌柜王于貴愁眉苦臉地迎上來麸锉,“玉大人,你說我怎么就攤上這事舆声』ǔ粒” “怎么了?”我有些...
    開封第一講書人閱讀 152,445評論 0 341
  • 文/不壞的土叔 我叫張陵媳握,是天一觀的道長碱屁。 經(jīng)常有香客問我,道長蛾找,這世上最難降的妖魔是什么娩脾? 我笑而不...
    開封第一講書人閱讀 55,185評論 1 278
  • 正文 為了忘掉前任,我火速辦了婚禮打毛,結果婚禮上柿赊,老公的妹妹穿的比我還像新娘。我一直安慰自己幻枉,他們只是感情好碰声,可當我...
    茶點故事閱讀 64,178評論 5 371
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著熬甫,像睡著了一般胰挑。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 48,970評論 1 284
  • 那天洽腺,我揣著相機與錄音脚粟,去河邊找鬼覆旱。 笑死蘸朋,一個胖子當著我的面吹牛,可吹牛的內容都是我干的扣唱。 我是一名探鬼主播藕坯,決...
    沈念sama閱讀 38,276評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼噪沙!你這毒婦竟也來了炼彪?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 36,927評論 0 259
  • 序言:老撾萬榮一對情侶失蹤正歼,失蹤者是張志新(化名)和其女友劉穎辐马,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體局义,經(jīng)...
    沈念sama閱讀 43,400評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡喜爷,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 35,883評論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了萄唇。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片檩帐。...
    茶點故事閱讀 37,997評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖另萤,靈堂內的尸體忽然破棺而出湃密,到底是詐尸還是另有隱情,我是刑警寧澤四敞,帶...
    沈念sama閱讀 33,646評論 4 322
  • 正文 年R本政府宣布泛源,位于F島的核電站,受9級特大地震影響忿危,放射性物質發(fā)生泄漏达箍。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,213評論 3 307
  • 文/蒙蒙 一癌蚁、第九天 我趴在偏房一處隱蔽的房頂上張望幻梯。 院中可真熱鬧,春花似錦努释、人聲如沸碘梢。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,204評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽煞躬。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間恩沛,已是汗流浹背在扰。 一陣腳步聲響...
    開封第一講書人閱讀 31,423評論 1 260
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留雷客,地道東北人芒珠。 一個月前我還...
    沈念sama閱讀 45,423評論 2 352
  • 正文 我出身青樓,卻偏偏與公主長得像搅裙,于是被迫代替她去往敵國和親皱卓。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 42,722評論 2 345

推薦閱讀更多精彩內容