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

R語言繪圖-點(diǎn)圖dot plot

 更新時間:2021年04月21日 08:36:35   作者:santiagoru  
這篇文章主要介紹了R語言繪圖-點(diǎn)圖dot plot案例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧

點(diǎn)圖簡介

點(diǎn)圖又叫Cleveland dot plot,克利夫蘭點(diǎn)圖??梢栽谒骄€上繪制大量的點(diǎn),更好的表示點(diǎn)之間的關(guān)系。強(qiáng)調(diào)數(shù)據(jù)的排序展示以及數(shù)據(jù)之間的差距。

點(diǎn)圖一般是橫向展示,所以y軸為類別型變量,x軸為需要展示的數(shù)據(jù)值。

dotchart函數(shù)

dotchart(x, labels = NULL, groups = NULL, gdata = NULL,
         ann = par("ann"), xaxt = par("xaxt"), frame.plot = TRUE, log = "",
         cex = par("cex"), pt.cex = cex,
         pch = 21, gpch = 21, bg = par("bg"),
         color = par("fg"), gcolor = par("fg"), lcolor = "gray",
         xlim = range(x[is.finite(x)]),
         main = NULL, xlab = NULL, ylab = NULL, ...)

R語言的base包里面自帶的dotchart函數(shù)可以繪制點(diǎn)圖。

上面簡介中的例子copy自dotchart的函數(shù)幫助文檔。

dotchart(VADeaths, main = "Death Rates in Virginia - 1940")

數(shù)據(jù)是1940年每1000人的死亡率。數(shù)據(jù)按照年齡段來區(qū)分,并且按照地方,男女性分組。

> VADeaths
      Rural Male Rural Female Urban Male Urban Female
50-54       11.7          8.7       15.4          8.4
55-59       18.1         11.7       24.3         13.6
60-64       26.9         20.3       37.0         19.3
65-69       41.0         30.9       54.6         35.1
70-74       66.0         54.3       71.1         50.0

dot 比較圖

我想比較特定地方的男女死亡率的比較。這樣的話,數(shù)據(jù)需要處理。下面的code處理的比較麻煩。但是達(dá)到了我要的效果。

ruralDFMale <- data.frame(rownames(VADeaths),VADeaths[,1], c("Male","Male","Male","Male","Male"))
names(ruralDFMale ) <- c("AgeGroup", "DeathRate","Gender" )

ruralDFFeMale <- data.frame(rownames(VADeaths),VADeaths[,2], c("Female","Female","Female","Female","Female"))
names(ruralDFFeMale) <- c("AgeGroup", "DeathRate","Gender" )

ruralDF <- rbind(ruralDFMale, ruralDFFeMale)

colorFun <- function(gender) {
    colorVec <- vector()
    for(g in gender) {
        if(g == "Female") {
            colorVec <- c(colorVec, "Red")
        } else {
           colorVec <- c(colorVec, "Blue")
        }
    }
    colorVec 
}
dotchart(ruralDF$DeathRate, main = "Death Rates in Virginia - 1940", groups=ruralDF$AgeGroup,color=colorFun(ruralDF$Gender))

處理過后的數(shù)據(jù)

> ruralDF
       AgeGroup DeathRate Gender
50-54     50-54      11.7   Male
55-59     55-59      18.1   Male
60-64     60-64      26.9   Male
65-69     65-69      41.0   Male
70-74     70-74      66.0   Male
50-541    50-54       8.7 Female
55-591    55-59      11.7 Female
60-641    60-64      20.3 Female
65-691    65-69      30.9 Female
70-741    70-74      54.3 Female

圖中的紅色為女性,藍(lán)色為男性。結(jié)果符合一般的常識,女性的壽命高于男性。所以同一年齡段的女性死亡率比男性低。

補(bǔ)充:R語言作圖——violin plot(小提琴圖)

小仙同學(xué)決定學(xué)習(xí)R語言來提升自己作圖的“格調(diào)”的時候,心中還有有些疑慮的(嘿嘿,我這么懶,可不愿意做無用功了?)。仔細(xì)想了想,貌似又找到了兩個學(xué)習(xí)R的理由。

一是R可以幫助我們避免重復(fù)勞動,實(shí)現(xiàn)“一勞永逸”的終極夢想。盡管非常不想承認(rèn)這一事實(shí),在科研的過程中,小仙同學(xué)制造出了大量“無效”的數(shù)據(jù)(sign…),但也不得不“絞盡腦汁”、“竭盡全力”地進(jìn)行花式分析,試圖找出合理的解釋。這時候用Excel或者Origin作圖的劣勢就顯現(xiàn)出來了,每換一種分析方法或者是數(shù)據(jù),我們都需要經(jīng)過“插入圖表”、“調(diào)整顏色”、“調(diào)整間距”等等繁雜的工序畫出一張可以拿去“面圣”的圖。小仙同學(xué)一想到這些就感覺“累覺不愛”了。

二是R可以自動生成比較貌美的圖。不知道大家有沒有這樣的感受,自己辛辛苦苦畫了半天、調(diào)整的半天的圖會得到真實(shí)卻很殘忍的評價(jià)“很丑”(這是小仙同學(xué)心中永遠(yuǎn)的痛)。即使本小仙自以為眼光獨(dú)特、品味高雅,費(fèi)勁嘗試“高級”的色系,但搭配出來總是那么不盡人意(實(shí)測網(wǎng)紅晚晚帶火的“莫蘭迪色”不適用于科研繪圖)。顏色的搭配、飽和度和透明度的調(diào)整沒有想象中那么容易。折騰了半天,天生就愛不服氣的本小仙,最后決定還是把專業(yè)的事交給專業(yè)的人做啦(偷偷告訴你,據(jù)說有科學(xué)家專門研究paper插圖的配色,所以自己畫的圖沒有那么貌美的時候也不要“妄自菲薄”啦)。

好了,叨叨這么多,終于要開始進(jìn)入正題啦。一開始用R繪圖的時候,小仙同學(xué)其實(shí)是非常痛苦的,因?yàn)闆]有編程基礎(chǔ),又懟了好幾年瓶瓶罐罐,看到一行行代碼,腦子里飄過的全是“&%¥#@¥$”。尤其是當(dāng)你有實(shí)驗(yàn)要做、報(bào)告要寫、作業(yè)要交的時候,平心靜氣地坐下來踏踏實(shí)實(shí)學(xué)習(xí)真的太難了(有人說小仙同學(xué)那么忙是因?yàn)樾实?,好像真有些道理,我這真是“唉”,有苦說不出)。

后來本小仙的學(xué)習(xí)策略就非常簡單,用到啥就去搜啥,我對數(shù)據(jù)結(jié)構(gòu)、語法結(jié)構(gòu)一點(diǎn)都不感興趣,能讓我用最短的時間內(nèi)畫出我想要的圖,就是最好的方法。即使這樣,小仙同學(xué)還是費(fèi)了一些功夫。因?yàn)榫W(wǎng)上的一些教程,很多都是從別處復(fù)制粘貼過來的,本身就不完整。另外一個原因,某些大神覺得自己的教程已經(jīng)足夠通俗易懂了,有些大家都知道的基礎(chǔ)知識根本不需要講(小仙同學(xué)不服,有基礎(chǔ)的同學(xué)不用看教程也可以自己摸索出來,真正需要教程的就是我們這些小白)。

小仙同學(xué)愿意嘗試一下,把最最全面、稍作修改就能拿去的方法code分享一下,也不枉費(fèi)花了那么多的時間。

那就先從violin plot開始吧。

(假設(shè)你已經(jīng)安裝了R和RStudio)

Step1. 繪圖數(shù)據(jù)的準(zhǔn)備

首先要把你想要繪圖的數(shù)據(jù)調(diào)整成R語言可以識別的格式。

一般我們的數(shù)據(jù)都是保存在excel文檔里,這里建議大家在excel中保存成csv格式,讀寫的速度會比xlsx快很多。(小仙同學(xué)的親身經(jīng)驗(yàn),我的有些數(shù)據(jù)有兩萬行,xlsx在我的耐心范圍內(nèi)讀不進(jìn)去,RStudio崩潰)。

數(shù)據(jù)的格式如下圖:一列表示一種變量,第一行是列名

數(shù)據(jù)格式

Step2. 繪圖數(shù)據(jù)的讀取

data<-read.csv(“your file path”, header = T) #注釋:header=T表示數(shù)據(jù)中

的第一行是列名,如果沒有列名就用header=F

Step3.繪圖所需package的安裝、調(diào)用

install.package(“ggplot2”) #注釋:ggplot2是目前公認(rèn)繪圖很強(qiáng)的一個安裝包
library(ggplot2) #注釋:package在使用之前需要調(diào)用

Step4.繪圖

data$dose <- as.factor(data$dose) #注釋:此處dose可用你的變量名稱替換,$表示取數(shù)據(jù)集里的某一個元素

p<-ggplot(data, aes(x = dose, y = len)) #注釋:”x=”,”y=”表示x軸和y軸表示的變量數(shù)值,p表示圖像對象
p+geom_violin() #注釋:畫出violin plot的函數(shù)

Step5.美化

p+geom_violin(aes(fill = dose)) #注釋:按組別填充不同的顏色

*如果你想手動改變顏色,可以使用這一句

p+geom_violin(aes(fill = “dose”))+scale_fill_manual(values=c("#56B4E9"))
#注釋:”#56B4E9”可以用其他顏色的代碼來替換

以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

相關(guān)文章

  • R語言關(guān)于數(shù)據(jù)幀的知識點(diǎn)詳解

    R語言關(guān)于數(shù)據(jù)幀的知識點(diǎn)詳解

    在本篇文章里小編給大家整理的是一篇關(guān)于R語言關(guān)于數(shù)據(jù)幀的知識點(diǎn)詳解內(nèi)容,有興趣的朋友們可以學(xué)習(xí)下。
    2021-04-04
  • R語言刷題檢驗(yàn)數(shù)據(jù)缺失類型過程詳解

    R語言刷題檢驗(yàn)數(shù)據(jù)缺失類型過程詳解

    這篇文章主要為大家介紹了R語言刷題中檢驗(yàn)數(shù)據(jù)缺失類型的過程示例分析詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步
    2021-11-11
  • R語言關(guān)于“包”的知識點(diǎn)總結(jié)

    R語言關(guān)于“包”的知識點(diǎn)總結(jié)

    在本篇文章里小編給大家分享的是一篇關(guān)于R語言“包”的知識點(diǎn)總結(jié)內(nèi)容,有興趣的朋友們可以學(xué)習(xí)下。
    2021-03-03
  • R語言邏輯回歸、ROC曲線與十折交叉驗(yàn)證詳解

    R語言邏輯回歸、ROC曲線與十折交叉驗(yàn)證詳解

    這篇文章主要給大家介紹了關(guān)于R語言邏輯回歸、ROC曲線與十折交叉驗(yàn)證的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • R語言操作XML文件實(shí)例分析

    R語言操作XML文件實(shí)例分析

    在本篇文章里小編給大家整理的是一篇關(guān)于R語言操作XML文件實(shí)例分析,有興趣的朋友們可以跟著學(xué)習(xí)下。
    2021-05-05
  • R語言中向量和矩陣簡單運(yùn)算的實(shí)現(xiàn)

    R語言中向量和矩陣簡單運(yùn)算的實(shí)現(xiàn)

    這篇文章主要介紹了R語言中向量和矩陣簡單運(yùn)算的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • R語言學(xué)習(xí)初識Rcpp類型List

    R語言學(xué)習(xí)初識Rcpp類型List

    這篇文章主要為大家介紹了R語言中Rcpp的類型List的基礎(chǔ)學(xué)習(xí),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪
    2021-11-11
  • 用R語言實(shí)現(xiàn)霍夫曼編碼的示例代碼

    用R語言實(shí)現(xiàn)霍夫曼編碼的示例代碼

    這篇文章主要介紹了用R語言實(shí)現(xiàn)霍夫曼編碼的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • R語言數(shù)據(jù)類型與相應(yīng)運(yùn)算的實(shí)現(xiàn)

    R語言數(shù)據(jù)類型與相應(yīng)運(yùn)算的實(shí)現(xiàn)

    本文主要介紹了R語言數(shù)據(jù)類型與相應(yīng)運(yùn)算的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • R語言實(shí)現(xiàn)線性回歸的示例

    R語言實(shí)現(xiàn)線性回歸的示例

    這篇文章主要介紹了R語言實(shí)現(xiàn)線性回歸的示例,幫助大家更好的理解和學(xué)習(xí)使用R語言,感興趣的朋友可以了解下
    2021-03-03

最新評論

青神县| 大邑县| 开江县| 晋宁县| 郎溪县| 炎陵县| 丰原市| 麦盖提县| 沙田区| 万州区| 东至县| 奉新县| 图们市| 长宁县| 项城市| 巴林左旗| 潮州市| 南川市| 巴林左旗| 大港区| 东乡县| 东兴市| 平远县| 南乐县| 铜陵市| 镇坪县| 永城市| 临海市| 建湖县| 丹棱县| 洞口县| 乌拉特中旗| 彭泽县| 慈利县| 郯城县| 锦屏县| 西藏| 六安市| 普定县| 静乐县| 南京市|