R繪圖-散點圖


散點圖是將所有的數據以點的形式展現在直角坐標系上,以顯示變量之間的相互影響程度,點的位置由變量的數值決定,每個點對應一個 X 和 Y 軸點坐標。

散點圖可以使用 plot() 函數來繪制,語法格式如下:

plot(x, y, type="p", main, xlab, ylab, xlim, ylim, axes)
  • x 橫坐標 x 軸的數據集合

  • y 縱坐標 y 軸的數據集合

  • type:繪圖的類型,p 為點、l 為直線, o 同時繪制點和線,且線穿過點。
  • main 圖表標題。

  • xlab、ylab x 軸和 y 軸的標簽名稱。

  • xlim、ylim x 軸和 y 軸的范圍。

  • axes 布爾值,是否繪制兩個 x 軸。

type 參數可選擇值:

  • p:點圖
  • l:線圖
  • b:同時繪制點和線
  • c:僅繪制參數 b 所示的線
  • o:同時繪制點和線,且線穿過點
  • h:繪制出點到橫坐標軸的垂直線
  • s:階梯圖,先橫后縱
  • S:階梯圖,先縱后豎
  • n: 空圖

創建一個簡單的線圖:

實例

x<-c(10,40)
y<-c(20,60)
# 生成 png 圖片
png(file = "runnob-test-plot2.png")

plot(x, y, "l")

創建一個簡單的線圖,type 使用 o 參數,同時繪制點和線,且線穿過點:

實例

x<-c(10,40)
y<-c(20,60)
# 生成 png 圖片
png(file = "runnob-test-plot.png")

plot(x, y, "o")

接下來我們使用 R 語言的內置數據集 mtcars 來進行測試。

我們使用 mtcars 數據集的 wt 和 mpg 列:

實例

input <- mtcars[,c('wt','mpg')]
print(head(input))

輸出結果為:

wt  mpg
Mazda RX4 2.620 21.0 Mazda RX4 Wag 2.875 21.0 Datsun 710 2.320 22.8 Hornet 4 Drive 3.215 21.4 Hornet Sportabout 3.440 18.7 Valiant 3.460 18.1

接着我們使用以上數據生存一個散點圖

實例

# 數據
input <- mtcars[,c('wt','mpg')]

# 生成 png 圖片
png(file = "scatterplot.png")

# 設置坐標 x 軸范圍 2.5 到 5, y 軸范圍 15 到 30.
plot(x = input$wt,y = input$mpg,
   xlab = "Weight",
   ylab = "Milage",
   xlim = c(2.5,5),
   ylim = c(15,30),              
   main = "Weight vs Milage"
)

散點圖矩陣

散點圖矩陣是借助兩變量散點圖的作圖方法,它可以看作是一個大的圖形方陣,其每一個非主對角元素的位置上是對應行的變量與對應列的變量的散點圖。而主對角元素位置上是各變量名,這樣,借助散點圖矩陣可以清晰地看到所研究多個變量兩兩之間的相關關系。

散點圖矩陣就是把數據集中的每個數值變量兩兩繪制散點圖。

R 語言使用以下函數創建散點圖矩陣:

pairs(formula, data)

參數:

  • formula 變量系列

  • data 變量的數據集

實例

# 輸出圖片
png(file = "scatterplot_matrices.png")

# 4 個變量繪制矩陣,12 個圖

pairs(~wt+mpg+disp+cyl,data = mtcars, main = "Scatterplot Matrix")


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM