最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

R語(yǔ)言數(shù)據(jù)可視化ggplot繪制置信區(qū)間與分組繪圖技巧

 更新時(shí)間:2021年11月05日 16:03:50   作者:Kanny廣小隸  
這篇文章主要為大家介紹了R語(yǔ)言數(shù)據(jù)可視化ggplot繪制置信區(qū)間與分組繪圖的技巧,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步

1. 單組情況

1)構(gòu)造數(shù)據(jù)集

x <- 1:10
y <- x^2
ci_l <- x^2 - 0.5 * x
ci_r <- x^2 + 0.5 * x

dat_plot <- data.frame(x, y, ci_l, ci_r)

數(shù)據(jù)集長(zhǎng)下面這樣:

    x   y ci_l  ci_r
1   1   1  0.5   1.5
2   2   4  3.0   5.0
3   3   9  7.5  10.5
4   4  16 14.0  18.0
5   5  25 22.5  27.5
6   6  36 33.0  39.0
7   7  49 45.5  52.5
8   8  64 60.0  68.0
9   9  81 76.5  85.5
10 10 100 95.0 105.0

2)繪制置信區(qū)間

添加置信區(qū)間的核心函數(shù)是:geom_ribbon(),并且要注意,先畫(huà)置信區(qū)間,再繪制線條,才能保證線在置信區(qū)間的上方。

ggplot(dat_plot, aes(x = x)) +                  # x軸在此處添加,目的為了置信區(qū)間與擬合線共享同一個(gè)x
  geom_ribbon(aes(ymin = ci_l, ymax = ci_r)) +  # 添加置信區(qū)間
  geom_line(aes(y = y))                         # 添加擬合線

(文末會(huì)對(duì)上面“丑丑”的置信區(qū)間進(jìn)行美化。)

通常情況,所需的圖片都是需要分組的,下面我們會(huì)進(jìn)行分組繪制置信區(qū)間。

2. 多組情況

我們將會(huì)演示兩種方式繪制分組情況繪制置信區(qū)間:

方法1

1)構(gòu)造數(shù)據(jù)集

通常情況下,ggplot需要的向量化構(gòu)造:

x <- 1:10
y1 <- x^2
ci_l1 <- x^2 - 0.5 * x
ci_r1 <- x^2 + 0.5 * x

y2 <- 20 * log(x)
ci_l2 <- 20 * log(x) - 0.5 * x
ci_r2 <- 20 * log(x) + 0.5 * x

dat_plot <- data.frame(rbind(cbind(x, y1, ci_l1, ci_r1), cbind(x, y2, ci_l2, ci_r2)))
names(dat_plot) <- c("x", "y", "ci_l", "ci_r")
dat_plot$group <- rep(c("G1", "G2"), each = 10)

數(shù)據(jù)樣式:

    x         y     ci_l      ci_r group
1   1   1.00000  0.50000   1.50000    G1
2   2   4.00000  3.00000   5.00000    G1
3   3   9.00000  7.50000  10.50000    G1
4   4  16.00000 14.00000  18.00000    G1
5   5  25.00000 22.50000  27.50000    G1
6   6  36.00000 33.00000  39.00000    G1
7   7  49.00000 45.50000  52.50000    G1
8   8  64.00000 60.00000  68.00000    G1
9   9  81.00000 76.50000  85.50000    G1
10 10 100.00000 95.00000 105.00000    G1
11  1   0.00000 -0.50000   0.50000    G2
12  2  13.86294 12.86294  14.86294    G2
13  3  21.97225 20.47225  23.47225    G2
14  4  27.72589 25.72589  29.72589    G2
15  5  32.18876 29.68876  34.68876    G2
16  6  35.83519 32.83519  38.83519    G2
17  7  38.91820 35.41820  42.41820    G2
18  8  41.58883 37.58883  45.58883    G2
19  9  43.94449 39.44449  48.44449    G2
20 10  46.05170 41.05170  51.05170    G2

2)繪制置信區(qū)間

注意,這里分組的關(guān)鍵就是使用 group = 參數(shù)。

ggplot(dat_plot, aes(x = x, group = group)) +
  geom_ribbon(aes(ymin = ci_l, ymax = ci_r)) +
  geom_line(aes(y = y))

但是這里的顏色比較吃藕,所以我們改變一下線條的顏色與置信區(qū)間的顏色。

非常簡(jiǎn)單,我們將參數(shù) group =color =fill = 替換即可。值得一提的是,這里的color = 如果加在ggplot()中,添加的就會(huì)是擬合線與置信區(qū)間外邊線兩條曲線。若不想要置信區(qū)間的外邊線, color =寫(xiě)在geom_line()中即可。

此外,還需要注意,繪制置信區(qū)間,若線條與區(qū)間是相同顏色,一定要修改置信區(qū)間的透明度,利用alpha = 進(jìn)行修改,其范圍在0-1之間,并且值越小越透明。

代碼如下:

ggplot(dat_plot, aes(x = x, color = group, fill = group)) +
  geom_ribbon(aes(ymin = ci_l, ymax = ci_r), alpha = 0.3) +  # alpha 修改透明度
  geom_line(aes(y = y))

在大多數(shù)情況下,我們遇到的多組數(shù)據(jù)集長(zhǎng)下面 方法2 這樣,我們需要怎么進(jìn)行繪制呢?下面繼續(xù)進(jìn)行講解:

方法2

1)構(gòu)造數(shù)據(jù)集

dat_plot <- data.frame(x, y1, ci_l1, ci_r1, y2, ci_l2, ci_r2) # 基于前文的數(shù)據(jù)
    x  y1 ci_l1 ci_r1       y2    ci_l2    ci_r2
1   1   1   0.5   1.5  0.00000 -0.50000  0.50000
2   2   4   3.0   5.0 13.86294 12.86294 14.86294
3   3   9   7.5  10.5 21.97225 20.47225 23.47225
4   4  16  14.0  18.0 27.72589 25.72589 29.72589
5   5  25  22.5  27.5 32.18876 29.68876 34.68876
6   6  36  33.0  39.0 35.83519 32.83519 38.83519
7   7  49  45.5  52.5 38.91820 35.41820 42.41820
8   8  64  60.0  68.0 41.58883 37.58883 45.58883
9   9  81  76.5  85.5 43.94449 39.44449 48.44449
10 10 100  95.0 105.0 46.05170 41.05170 51.05170

2)繪制置信區(qū)間

面對(duì)上述這種數(shù)據(jù)格式,我們處理起來(lái)也十分簡(jiǎn)單,我們只需要在對(duì)應(yīng)的aes() 函數(shù)中,寫(xiě)清楚對(duì)應(yīng)的分組名稱即可。

color =fill = 一定要寫(xiě)在 aes() 里面?。。?br /> color =fill = 一定要寫(xiě)在 aes() 里面?。?!
color =fill = 一定要寫(xiě)在 aes() 里面?。?!

重要的事情說(shuō)三遍,具體代碼如下所示:

ggplot(dat_plot, aes(x = x)) +
  geom_ribbon(aes(ymin = ci_l1, ymax = ci_r1, fill = "G1"), alpha = 0.3) +
  geom_ribbon(aes(ymin = ci_l2, ymax = ci_r2, fill = "G2"), alpha = 0.3) +
  geom_line(aes(y = y1, color = "G1")) +
  geom_line(aes(y = y2, color = "G2"))

但這樣的置信區(qū)間還比較丑,下面我們給出一個(gè)略微美化的版本,并在代碼中進(jìn)行注釋,說(shuō)明每個(gè)函數(shù)的用意。

3)美化

ggplot(dat_plot, aes(x = x)) +
  geom_ribbon(aes(ymin = ci_l1, ymax = ci_r1, fill = "G1", color = "G1"), 
              alpha = 0.3, linetype = 2) +        # linetype = 2 表示置信區(qū)間描邊線為虛線
  geom_ribbon(aes(ymin = ci_l2, ymax = ci_r2, fill = "G2", color = "G2"), 
              alpha = 0.3, linetype = 2) +
  geom_line(aes(y = y1, color = "G1")) +
  geom_line(aes(y = y2, color = "G2")) +
  theme_bw(base_family = "Times") +
  theme(panel.grid = element_blank(),
    legend.position = "top",                      # legend 置頂
    panel.border = element_blank(),
    text = element_text(family = "STHeiti"),      # Mac 系統(tǒng)中中文繪圖
    plot.title = element_text(hjust = 0.5)) +     # 標(biāo)題居中
  labs(x = "y", y = "x", title = "分組置信區(qū)間",
       color = "", fill = "")                      # 將置信區(qū)間與擬合線的 legend 合并,并且不要 legend 的小標(biāo)題 

想學(xué)習(xí)更多 ggplot 美化繪圖的技巧,可以參考下述鏈接:

R語(yǔ)言學(xué)習(xí)ggplot2繪制統(tǒng)計(jì)圖形包全面詳解

以上就是R語(yǔ)言數(shù)據(jù)可視化ggplot繪制置信區(qū)間與分組繪圖技巧的詳細(xì)內(nèi)容,更多關(guān)于ggplot繪制置信區(qū)間與分組繪圖的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • R語(yǔ)言的歷史介紹

    R語(yǔ)言的歷史介紹

    在本篇內(nèi)容里小編給大家介紹了關(guān)于R語(yǔ)言的歷史內(nèi)容,有興趣學(xué)習(xí)的朋友可以閱讀下。
    2021-03-03
  • R語(yǔ)言中的vector(向量),array(數(shù)組)使用總結(jié)

    R語(yǔ)言中的vector(向量),array(數(shù)組)使用總結(jié)

    這篇文章主要介紹了R語(yǔ)言中的vector(向量),array(數(shù)組)使用總結(jié),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • R語(yǔ)言中字符串的拼接操作實(shí)例講解

    R語(yǔ)言中字符串的拼接操作實(shí)例講解

    這篇文章主要介紹了R語(yǔ)言中字符串的拼接操作實(shí)例講解,文中使用了具體的代碼實(shí)例,有感興趣的同學(xué)可以研究下
    2021-03-03
  • R語(yǔ)言如何將大型Excel文件轉(zhuǎn)為dta格式詳解

    R語(yǔ)言如何將大型Excel文件轉(zhuǎn)為dta格式詳解

    這篇文章主要給大家介紹了關(guān)于R語(yǔ)言如何將大型Excel文件轉(zhuǎn)為dta格式的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • R語(yǔ)言數(shù)據(jù)類型轉(zhuǎn)換的實(shí)現(xiàn)(向量,列表,矩陣)

    R語(yǔ)言數(shù)據(jù)類型轉(zhuǎn)換的實(shí)現(xiàn)(向量,列表,矩陣)

    我們?cè)谑褂肦語(yǔ)言做數(shù)據(jù)分析時(shí),會(huì)一直對(duì)數(shù)據(jù)進(jìn)行不同類型的轉(zhuǎn)換,本文主要介紹了R語(yǔ)言數(shù)據(jù)類型轉(zhuǎn)換的實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-04-04
  • R語(yǔ)言ARMA模型的參數(shù)選擇說(shuō)明

    R語(yǔ)言ARMA模型的參數(shù)選擇說(shuō)明

    這篇文章主要介紹了R語(yǔ)言ARMA模型的參數(shù)選擇說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-04-04
  • R語(yǔ)言繪制Radar chart雷達(dá)圖

    R語(yǔ)言繪制Radar chart雷達(dá)圖

    這篇文章主要為大家介紹了R語(yǔ)言繪制Radar chart雷達(dá)圖的方法示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步
    2022-02-02
  • R語(yǔ)言-進(jìn)行數(shù)據(jù)的重新編碼(recode)操作

    R語(yǔ)言-進(jìn)行數(shù)據(jù)的重新編碼(recode)操作

    這篇文章主要介紹了R語(yǔ)言-進(jìn)行數(shù)據(jù)的重新編碼(recode)操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-04-04
  • R語(yǔ)言 實(shí)現(xiàn)將factor轉(zhuǎn)換成numeric方法

    R語(yǔ)言 實(shí)現(xiàn)將factor轉(zhuǎn)換成numeric方法

    這篇文章主要介紹了R語(yǔ)言 實(shí)現(xiàn)將factor轉(zhuǎn)換成numeric方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-03-03
  • R語(yǔ)言邏輯型運(yùn)算的實(shí)現(xiàn)

    R語(yǔ)言邏輯型運(yùn)算的實(shí)現(xiàn)

    本文主要介紹了R語(yǔ)言邏輯型運(yùn)算,邏輯型是 R 的基本數(shù)據(jù)類型之一,只有兩個(gè)值 TRUE 和 FALSE, 缺失時(shí)為 NA,具有一定的參考價(jià)值,感興趣的可以了解一下
    2022-03-03

最新評(píng)論

三门县| 沅陵县| 雷山县| 喀什市| 澳门| 西乌珠穆沁旗| 巨鹿县| 玉溪市| 婺源县| 高陵县| 汕头市| 油尖旺区| 安阳县| 清河县| 芒康县| 宿迁市| 乐业县| 竹北市| 咸丰县| 丹棱县| 三穗县| 仙居县| 肇源县| 潍坊市| 吉木萨尔县| 涪陵区| 漳州市| 读书| 疏勒县| 壤塘县| 盐源县| 德化县| 固原市| 布拖县| 鄂托克前旗| 枞阳县| 乳源| 宜丰县| 彩票| 南溪县| 遵义县|