溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

R語(yǔ)言怎么畫(huà)氣泡圖

發(fā)布時(shí)間:2021-11-22 15:57:37 來(lái)源:億速云 閱讀:965 作者:iii 欄目:大數(shù)據(jù)

這篇文章主要講解了“用R語(yǔ)言怎么畫(huà)氣泡圖”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“用R語(yǔ)言怎么畫(huà)氣泡圖”吧!

第一步是準(zhǔn)備數(shù)據(jù)

部分?jǐn)?shù)據(jù)集如下

R語(yǔ)言怎么畫(huà)氣泡圖  
image.png

總共4列

  • 前兩列是變量
  • 第三列是相關(guān)系數(shù)
  • 第四列是 顯著性P值

前面的變量需要注意的是,因?yàn)橹划?huà)上三角,所以準(zhǔn)備數(shù)據(jù)的時(shí)候是 :

總共的變量是10個(gè) 第一列10個(gè)x1,接下來(lái)是緊接著9個(gè)x2,然后是8個(gè)x3

 第一步樹(shù)讀入數(shù)據(jù)
df<-read.csv("20210320.csv",header=T)
head(df)
   增加一列顯著性的星號(hào)
library(dplyr)
df%>%
  mutate(label=case_when(
    signi<0.001 ~ "***",
    signi>0.001&signi<0.01 ~ "**",
    signi>0.01&signi<0.05 ~ "*",
    TRUE ~ ""
    )
  ) -> df1
   接下來(lái)是作圖

首先是上三角的氣泡圖

library(ggplot2)
ggplot(data=df1,aes(x=var_x,y=var_y))+
  geom_point(aes(size=value,color=value))+
  scale_color_gradient(low = "#80fcfe",high = "#ff80fc",
                       breaks=seq(-1,1,0.2))+
  scale_size_continuous(range = c(5,15))+
  guides(size=F)
 
R語(yǔ)言怎么畫(huà)氣泡圖  
image.png

這樣的話X10的位置是不對(duì)的,所以要設(shè)置一下因子的水平

df1$var_x<-factor(df1$var_x,
                 levels = paste0("X",1:10))
df1$var_y<-factor(df1$var_y,
                 levels = paste0("X",1:10))
ggplot(data=df1,aes(x=var_x,y=var_y))+
  geom_point(aes(size=value,color=value))+
  scale_color_gradient(low = "#80fcfe",high = "#ff80fc",
                       breaks=seq(-1,1,0.2))+
  scale_size_continuous(range = c(5,15))+
  guides(size=F)
 

這樣就對(duì)了R語(yǔ)言怎么畫(huà)氣泡圖

接下來(lái)是添加文字,首先把對(duì)角線那一列去掉

df1%>%
  filter(var_x!=var_y) -> df2
head(df2)
ggplot(data=df1,aes(x=var_x,y=var_y))+
  geom_point(aes(size=value,color=value))+
  scale_color_gradient(low = "#80fcfe",high = "#ff80fc",
                       breaks=seq(-1,1,0.2))+
  scale_size_continuous(range = c(5,15))+
  guides(size=F)+
  theme_bw()+
  geom_text(data=df2,aes(x=var_y,y=var_x,
                        label=paste0(value,label)))
 
R語(yǔ)言怎么畫(huà)氣泡圖  
image.png

最后調(diào)整一下圖例的高度

df1%>%
  filter(var_x!=var_y) -> df2
head(df2)
ggplot(data=df1,aes(x=var_x,y=var_y))+
  geom_point(aes(size=value,color=value))+
  scale_color_gradient(low = "#80fcfe",high = "#ff80fc",
                       breaks=seq(-1,1,0.2))+
  scale_size_continuous(range = c(5,15))+
  guides(size=F)+
  theme_bw()+
  geom_text(data=df2,aes(x=var_y,y=var_x,
                        label=paste0(value,label)))+
  theme(legend.key.height = unit(3.5,'cm'),
        legend.justification = c(0,0),
        legend.title = element_blank())
 
R語(yǔ)言怎么畫(huà)氣泡圖    

感謝各位的閱讀,以上就是“用R語(yǔ)言怎么畫(huà)氣泡圖”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)用R語(yǔ)言怎么畫(huà)氣泡圖這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI