tft每日頭條

 > 生活

 > 如何用r語言作圖

如何用r語言作圖

生活 更新时间:2024-09-27 19:19:41
背景介紹

維恩圖用于展示在不同的事物群組(集合)之間的數學或邏輯聯系,尤其适合用來表示集合(或)類之間的“大緻關系”,它也常常被用來幫助推導(或理解推導過程)關于集合運算(或類運算)的一些規律。通常每個集合以一個圓圈表示。每個集合都是一組具有共同之處的物件或數據。當多個圓圈(集)相互重疊時,稱為交集 (intersection),裡面的數據同時具有重疊集中的所有屬性。

——百度百科、數據可視化工具目錄

今天我們來使用R語言繪制一下維恩圖,看看到底有多簡單!

軟件介紹

[軟件1]:R (Version 4.1.2)

[軟件2]:RStudio(Version 1.4.1106)

圖文教程

1.首先一上來就是進行安裝及其加載包

install.packages("VennDiagram") library(VennDiagram)

2.看一下該繪圖函數的介紹

如何用r語言作圖(一文教你學會維恩圖的繪制)1

3.首先,我們生成一組數據,進行維恩圖的繪制

set1 <- paste(rep("word_" , 200) , sample(c(1:1000) , 200 , replace=F) , sep="") set2 <- paste(rep("word_" , 200) , sample(c(1:1000) , 200 , replace=F) , sep="") set3 <- paste(rep("word_" , 200) , sample(c(1:1000) , 200 , replace=F) , sep="") set4 <- paste(rep("word_" , 200) , sample(c(1:1000) , 200 , replace=F) , sep="") set5 <- paste(rep("word_" , 200) , sample(c(1:1000) , 200 , replace=F) , sep="")

4.為了方便大家讀取自己的數據,我們可以将數據寫進Excel,然後再讀取進來,那麼首先我們将數據做成數據框

Venn_data <- data.frame(set1, set2, set3, set4, set5)

5.然後加載可以讀取/寫成Excel的包,将數據寫成Excel文件

library(openxlsx) write.xlsx(Venn_data,"Venn_data.xlsx")

如何用r語言作圖(一文教你學會維恩圖的繪制)2

6.使用自己的數據的同學,可以直接從這一步開始:讀取數據

  • sheet數值用來指定數據在哪個sheet中

Venn_data <- read.xlsx("Venn_data.xlsx", sheet = 1)

7.使用attach将該數據讀取到R中,方便直接使用列名稱

attach(Venn_data)

8.使用函數繪圖

  • x數值為每個集合的列表
  • category.names為每個集合的名稱
  • filename為圖片名稱

venn.diagram( x = list(set1, set2, set3,set4, set5), category.names = c("set1", "set2", "set3","set4","set5"), filename = 'Venn_diagramm.png', output=TRUE)

如何用r語言作圖(一文教你學會維恩圖的繪制)3

9.然後我們對維恩圖的參數進一步調整

venn.diagram( x = list(set1, set2, set3,set4, set5), category.names = c("set1", "set2", "set3","set4","set5"), filename = 'Venn_diagramm.png', output=TRUE, # 輸出圖片要求,包括圖片類型,高和寬,分辨率,壓縮等方式 imagetype="png" , height = 1000 , width = 1000 , resolution = 300, compression = "lzw", # 圓環的調節,邊的寬度,是否需要虛線,以及填充的顔色 lwd = 2, lty = 'blank', fill = c("#EE3B3B", "#6495ED", "#8B7355", "#EEC900", "#008B8B"))

如何用r語言作圖(一文教你學會維恩圖的繪制)4

10.有些字體沒顯示出來,再進行調整

venn.diagram( x = list(set1, set2, set3,set4, set5), category.names = c("set1", "set2", "set3","set4","set5"), filename = 'Venn_diagramm.png', output=TRUE, # 輸出圖片要求,包括圖片類型,高和寬,分辨率,壓縮等方式 imagetype="png" , height = 1000 , width = 1000 , resolution = 300, compression = "lzw", #圓環的調節,邊的寬度,是否需要虛線,以及填充的顔色 lwd = 2, lty = 'blank', fill = c("#EE3B3B", "#6495ED", "#8B7355", "#EEC900", "#008B8B"), # 對圖上的數字進行調節,包括大小,是否加粗,以及字體 cex = .6, fontface = "bold", fontfamily = "sans", # 對每個集合的名字進行調節,包括字體大小,是否加粗,在外部,以及位置,字體及其顔色 cat.cex = 0.7, cat.fontface = "bold", cat.default.pos = "outer", cat.pos = c(0,-45,240,135,45), cat.dist = c(0.2,0.2,0.2,0.2,0.2), cat.fontfamily = "sans", cat.col=c("#EE3B3B", "#6495ED", "#8B7355", "#EEC900", "#008B8B"))

如何用r語言作圖(一文教你學會維恩圖的繪制)5

11.這麼詳細的教程,趕緊來學學吧!

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved