R_Studio(學生成績)繪制頻率分布直方圖、分布餅圖、折線比較圖


 

  

  對“Gary.csv”中的成績數據進行分布分析

 

  

 

  

 

  (1)按0-59,60-69,70-79,80-89,90-100分組繪制高級語言程序設計成績的頻率分布直方圖。

  (2)按0-59,60-69,70-79,80-89,90-100分組繪制計算機導論成績的分布餅圖。

  (3)繪圖前4門課程的折線比較圖。

 

實現過程

 

繪制高級語言程序設計成績的頻率分布直方圖

 

setwd('D:\\data')                            #更改工作目錄
list.files()                                #列出當前工作目錄下的文件
dat=read.csv(file="Gary.csv",header=TRUE)    #讀取"Gary.csv文件"


#table(cut(data,breaks = break2))             #對分布直方圖橫坐標進行切割

hist(dat[,7],freq = FALSE,breaks = c(0,60,70,80,90,100),col="red",main="頻率分布直方圖",xlab="成績")      
Gary.R

 

直方圖  hist(v,main,xlab,xlim,ylim,breaks,col,border)  傳送門

參數: 

  v - 是包含直方圖中使用數值的向量

  main - 表示圖表的標題

  col - 用於設置條的顏色

  border - 用於設置每個欄的邊框顏色

  xlab - 用於描述x軸

  xlim - 用於指定x軸上的值范圍

   ylim - 用於指定y軸上的值范圍

  breaks - 是用來提及每個欄的寬度

 

繪制計算機導論成績的分布餅圖

 

setwd('D:\\data')                            #更改工作目錄
list.files()                                #列出當前工作目錄下的文件
dat=read.csv(file="Gary.csv",header=TRUE)    #讀取"Gary.csv文件"

data=dat[which(complete.cases(dat)),8]                     #篩選計算機導論成績(第八列)
break2 = c(0,60,70,80,90,100)                              #設置分段區間
pie(break2,as.numeric(dat[,8]),main=("計算機導論成績餅狀圖"))      #做出頻率分布直方圖
Gary.R

   

餅圖:pie(x, labels, radius, main, col, clockwise)  傳送門

參數

  x - 是包含餅圖中使用的數值的向量

  labels - 用於描述切片的標簽

     radius - 用來表示餅圖圓的半徑(-1和+1之間的值)

  main - 用來表示圖表的標題

  col - 表示調色板

  clockwise - 是一個邏輯值,指示片是順時針還是逆時針繪制

 

 

繪圖前4門課程的折線比較圖

  4門課程折線圖分開畫

 

setwd('D:\\data')                            #更改工作目錄
list.files()                                #列出當前工作目錄下的文件
dat=read.csv(file="Gary.csv",header=TRUE)    #讀取"Gary.csv文件"


plot(as.numeric(dat[,3]),col="red",type="o",xlab="人數",ylab="成績",main=("大學成績餅狀圖"))      #做出頻率分布直方圖
plot(as.numeric(dat[,4]),col="blue",type="o",xlab="人數",ylab="成績",main=("大學英語成績餅狀圖"))      #做出頻率分布直方圖
plot(as.numeric(dat[,5]),col="green",type="o",xlab="人數",ylab="成績",main=("大學語文成績餅狀圖"))      #做出頻率分布直方圖
plot(as.numeric(dat[,6]),col="yellow",type="o",xlab="人數",ylab="成績",main=("高等數學成績餅狀圖"))      #做出頻率分布直方圖
Gary.R

 

折線比較圖:plot(v,type,col,xlab,ylab)  傳送門

參數

  v - 是包含數值的向量

  type - 取值“p”表示僅繪制點,“l”表示僅繪制線條,“o”表示僅繪制點和線

  xlab - 是x軸的標簽

  ylab - 是y軸的標簽

  main - 是圖表的標題

  col - 用於繪制點和線兩種顏色

 

  四門課程折線圖繪畫在一張圖中

  ( 只需要把plot改為lines()四組線就在同一個圖里面,圖的xlab,ylab,main由plot中的值來指定)

 

setwd('D:\\data')                            #更改工作目錄
list.files()                                #列出當前工作目錄下的文件
dat=read.csv(file="Gary.csv",header=TRUE)    #讀取"Gary.csv文件"


plot(as.numeric(dat[,3]),col="red",type="o",xlab="人數",ylab="成績",main=("大學成績餅狀圖"))      #做出頻率分布直方圖
lines(as.numeric(dat[,4]),col="blue",type="o",xlab="人數",ylab="成績",main=("大學英語成績餅狀圖"))      #做出頻率分布直方圖
lines(as.numeric(dat[,5]),col="green",type="o",xlab="人數",ylab="成績",main=("大學語文成績餅狀圖"))      #做出頻率分布直方圖
lines(as.numeric(dat[,6]),col="yellow",type="o",xlab="人數",ylab="成績",main=("高等數學成績餅狀圖"))      #做出頻率分布直方圖
Gary.R

 

  可以使用lines()函數在同一個圖表上繪制多個直接。

  在繪制第一行之后,lines()函數可以使用附加向量作為輸入來繪制圖表中的第二行

 


免責聲明!

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



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