使用R語言繪製直方圖

2020-12-04 翔宇亭IT樂園

在本號前面的文章中介紹了R語言中繪製散點圖,折線圖,條形圖,餅圖和箱線圖的方法,有興趣的讀者關注本號後,可以往前看本號的所有文章,本文將介紹在R中繪製直方圖的方法。

直方圖概述

直方圖(Histogram)又稱柱狀圖,是由一系列高度不等的縱條紋或線段表示的數據分布情況。可以使用直方圖估計數據的概率分布情況。

直方圖

在R語言中,可以使用hist()函數來繪製直方圖。

其使用的格式為:

hist函數語法格式

下面以幾個例子來說明主要參數的含義及使用方法。

第一個例子

本例主要說明參數x,col,border,labels和ylim的使用方法。

x是一個向量,繪製直方圖所需的數據。舉例說明:繪製19名學生的身高頻率直方圖。

Height<-c(144,166,163,143,152,169,130,159,160,175,161,170,146,159,150,183,165,146,169)

hist(Height,col="lightblue",border="red",labels=TRUE,ylim=c(0,7.2))

結果如下圖:

繪製直方圖

這裡指定繪製直方圖所用到的數據是Height,即學生的身高,繪圖顏色col參數為lightblue,直方圖條的邊框border參數為紅色,顯示每個條的標籤(頻數)參數labels為TRUE,y軸的取值範圍ylim為0~7.2。

第二個例子

這個例子主要演示了breaks參數,freq參數,density參數和angle參數的含義及用法。

hist(Height,breaks=12,freq=FALSE,density=10,angle=60)

所繪圖形如下所示:

直方圖的效果

在本例中breaks參數是設置直方圖的斷點,主要有以下幾種情況:

可以是一個向量給出直方圖中每個區間的斷點;可以是一個函數用於計算每個斷點的向量;用於表示區間數的一個數字;一個字符串用於給出計算區間數所使用的算法;一個用於計算區間數的函數。

freq參數是邏輯變量,如果設置為TRUE,則直方圖的數據為頻數,若為FALSE,則為概率密度。當僅當breaks為等距,且為指定probability時,freq默認為TRUE。density參數是指陰影線的密度,即每英寸(2.54釐米)的線數。默認值為NULL值,意味著沒有陰影線,非正值也不會繪製陰影線。angle參數是設置陰影線的斜度,以逆時針角度給出,默認為45度。

第三個例子

這個例子演示了breaks的另外一種用法,關於breaks的含義,可以查看上面的說明。這裡breaks是用一個向量給出了直方圖的分隔點。

data <- c(rep(1, 10), rep(2, 5), rep(3, 6))

hist(data, breaks = c(0.5, 1.5, 2.5, 3.5))

繪圖結果如下:

hist函數breaks參數

關於直方圖的內容就說這麼多,希望對你有所幫助。如果你想系統學習R語言,可以關注本號,本號將定期更新R語言方面的文章,內容由淺入深,由基本語法到具體的數據分析應用。

相關焦點

  • R語言中使用stem函數繪製莖葉圖
    R語言中提供了很多實用的函數幫助我們處理統計量。前面的文章中介紹了均值、方差、全距、幾何平均數等的計算方法,還給出了繪製條形圖,直方圖,散點圖,餅圖,箱線圖等的繪製方法,本文將介紹統計學中的另外一種圖的繪製方法:莖葉圖。歡迎感興趣的讀者關注本號,本號會詳細介紹R在各個方面的使用方法。
  • R語言繪圖基礎|直方圖和散點圖怎麼畫?
    作者:丁點helper來源: 丁點幫你前面2篇R語言相關的文章以鐵達尼號的數據為例,介紹了描述性統計中用到的計算操作,以及柱形圖的繪製操作。今天我們繼續聊聊如何在R中繪製直方圖和散點圖。繪製直方圖仍使用titanic.csv這個數據。
  • R語言從入門到精通:Day8-圖形繪製
    在上一次教程中,我們講解了R語言繪圖的諸多函數,想必看到自己做出的圖形,肯定小有成就感吧。  在函數par()和函數layout()的舉例中,不可避免的使用到了散點圖、條形圖、箱線圖等圖形的繪製,這些內容也會在本次推文中提到,圖形組合中的幾個例子算是先給大家熱熱身。
  • python可視化:matplotlib繪製直方圖進階篇!
    在上篇文章中介紹了直方圖的前五個參數,實際上直方圖一共有十幾個參數,剩下的參數利用這篇文章解釋清楚,讓大家能夠將如何繪製直方圖理解的透透的。bottom參數這個參數的含義也很直觀,底部的意思,指的是條形的底從哪裡開始。
  • OpenCV-Python 直方圖-1:查找、繪製和分析|二十六
    目標學會使用OpenCV和Numpy函數查找直方圖使用OpenCV和Matplotlib函數繪製直方圖你將看到以下函數:cv.calcHist(),np.histogram因此,儘可能使用OpenCV函數。現在我們應該繪製直方圖,但是怎麼繪製?
  • Matplotlib庫繪製直方圖
    繪製直方圖直方圖由豎立在x軸上的多個相鄰的矩形組成,這些矩形把x軸拆分為一段段彼此不重疊的線段(線段兩個端點所標識的數據範圍也叫面元),矩形的面積跟落在其所對應的面元的元素數量成正比。pyplot用於繪製直方圖的函數為hist( ),該函數具有一個其他繪圖函數所沒有的功能。它除了繪製直方圖外,還以元組形式返回直方圖的計算結果。事實上,hist( )函數還可以實現直方圖的計算。
  • R語言中使用lines函數繪製折線圖
    lines函數概述R語言中,abline函數每次僅能繪製一條直線,如果給出若干點,依次用線段連接起來的話,這可以藉助lines函數。R語言中lines函數的使用格式如下:lines(x, y = NULL,...)
  • Python學習第89課-數據可視化之直方圖繪製
    假設你想投資某一個城市的房地產,你肯定需要對這個城市的人口分布、增長潛力做一個調查,這時我們就需要做一個直方圖(histogram plot)。所以我們引入一個bin,就像垃圾分類一樣,我們給這些數據分類,相當於我們設定不同的年齡段,0-9歲裝到一個桶裡,10-19歲裝到一個桶裡,...,90-99歲裝到一個桶裡,即以10歲的間隔設置年齡段,以每一個年齡段為坐標畫一個柱狀圖,這些柱狀圖組合到一起,形成了直方圖。因此,我們大概可以這樣理解:直方圖就是把數據劃分區域後,以數據區域為節點繪製的柱狀圖的集合。
  • OpenCV-Python 直方圖-2:直方圖均衡|二十七
    img2 = cdf[img] 現在,我們像以前一樣計算其直方圖和cdf(您這樣做),結果如下所示:另一個重要的特徵是,即使圖像是一個較暗的圖像(而不是我們使用的一個較亮的圖像),經過均衡後,我們將得到幾乎相同的圖像。因此,這是作為一個「參考工具」,使所有的圖像具有相同的照明條件。這在很多情況下都很有用。
  • Python數據可視化實例之繪製圖表
    Python數據可視化實例之繪製圖表原創 蟲蟲安全 2018-09-05 17:41:57得利於語言的簡單明了、豐富的數據結構、豐富的類和模塊,Python如今成了數據科學中的香餑餑,成了matlab、R語言之外又一強大的數據分析工具。拋開其他方面的、今天蟲蟲帶大家一起來探索Python在數據可視化方面的應用。
  • R語言 | 繪製環圖示例
    本篇白魚小編將使用R語言ggplot2包,通過幾個示例分享這類圓環圖的繪製方法。    本文使用的作圖數據的網盤連結(提取碼jk1f):    https://pan.baidu.com/s/1vgxkVnOw-nv5TphMdZiooA    文件「phylum_top10.txt」由16S高通量測序所得的物種豐度錶轉化而來,展示了主要細菌類別(行)在各樣本(列)中的豐度信息。我們將通過圓環圖,展示各樣本中各細菌類別的豐度組成。
  • Python可視化很簡單,一文學會繪製柱狀圖、條形圖和直方圖
    matplotlib庫作為Python數據化可視化的最經典和最常用庫,掌握了它就相當於學會了Python的數據化可視化,通過前幾次呢,咱們已經討論了使用matplotlib庫中的圖表組成元素的幾個重要函數,相信大家已經學會並掌握了哦,今天呢,咱們再深入一點哦,一起來聊聊關於如何繪製柱狀圖
  • 精品圖表|Excel繪製直方圖與正態分布曲線
    今日更新:Excel繪製直方圖與正態分布曲線老樣子,還是先上幾幅不同配色的圖來看一下:作圖思路先對原始的數據進行分割(組),計算每個分組的頻數與正態分布後。然後插入柱形圖與折線圖,調整柱形的分類間距與折線的平滑度即可。
  • Python繪圖筆記:繪製有趨勢線的直方圖、小提琴圖和誤差圖
    (0,std,100) for std in range(6,10)]#繪製第一幅子圖:小提琴圖。ax.set_title('誤差條形圖的上下限')plt.show()figure34.帶有趨勢線的直方圖
  • OpenCV-Python 直方圖-3:二維直方圖|二十八
    目標在本章中,我們將學習查找和繪製2D直方圖。這將在以後的章節中有所幫助。介紹在第一篇文章中,我們計算並繪製了一維直方圖。 之所以稱為一維,是因為我們僅考慮一個特徵,即像素的灰度強度值。 但是在二維直方圖中,您要考慮兩個特徵。
  • R語言中使用par函數在同一繪圖區中繪製多幅圖
    par函數概述在R繪圖時,有時我們想在一個繪圖區中同時繪製多幅圖。在R語言中可以有多個函數來實現此要求。這裡先介紹一下繪圖參數par函數的使用。R中的par()函數可以將繪圖區分割成規則的幾個部分。多圖環境用參數mfrow或參數mfcol來設定,如:par(mforw=c(3,2))則是在同一繪圖區中繪製3行2列共6個圖形,而且是先按行繪製,即繪製完第1行的2個圖形後,再繪製第2行的2個圖形,最後是第3行的2個圖形。同理,par(mfcol=c(3,2))也是繪製3行2列共6個圖形,與上面不同的是,先按列繪製。
  • 數據分析與挖掘 - 08圖形繪製
    我們可以使用plt.scatter(x,y)這樣的方式來進行圖形的繪製。,棉棒圖主要用來繪製離散有序的數據,使用方法是plt.stem(x,y)。,箱線圖的繪製方法也比較簡單,我們使用plt.boxplot(x)來實現,x就是我們要輸入的數據了。
  • r語言work_r語言work函數 - CSDN
    R的源起R是S語言的一種實現。S語言是由 AT&T貝爾實驗室開發的一種用來進行數據探索、統計分析、作圖的解釋型語言。最初S語言的實現版本主要是S-PLUS。S-PLUS是一個商業 軟體,它基於S語言,並由MathSoft公司的統計科學部進一步完善。
  • 「python opencv視覺零基礎」十四、直方圖反向投影
    「python opencv視覺零基礎」十三、圖片顏色提鮮一、學習目標了解了直方圖反向投影的一般流程了解2D直方圖的使用如有錯誤歡迎指出~二、了解直方圖反向投影2.1 了解2D直方圖需要對直方圖進行反向投影,需要使用2D直方圖。
  • 從零開始學Python可視化(二):掌握統計圖形的繪製
    這次我們會嘗試更多常見的統計圖形,比如條形圖、直方圖、餅圖等,我們的目標是掌握工作學習過程中使用最頻繁的圖形技能。1. 柱狀圖(條形圖) —— bar() / barh()柱狀圖又叫條形圖,用於繪製定性(分類)數據的分布特徵,比如不同國家的GDP、不同年齡段的平均體重等。這次,我們以一組學生的身高來演示它的作圖方法。