Bộ dữ liệu mpg là một bộ dữ liệu phổ biến trong thống kê. Bộ dữ liệu này chứa thông tin về hiệu suất nhiên liệu của các mẫu xe hơi.
Bộ dự liệu mpg bao gồm các cột sau:
-manufacturer: Nhà sản xuất của xe hơi.
-model: Mô hình của xe hơi.
-displ: Dung tích động cơ (lít).
-year: Năm sản xuất của xe hơi.
-cyl: Số xi-lanh.
-trans: Loại hộp số.
-drv: Hệ thống dẫn động ( f - trước, r - sau, 4 - bốn bánh).
-cty: Số lượng dặm trên một gallon xăng trong thành phố.
-hwy: Số lượng dặm trên một gallon xăng trên cao tốc.
-fl: Loại nhiên liệu (E = Ethanol, D = Diesel, R = Regular, P = Premium, c: Gas, z: CNG)
-class: Phân loại của xe hơi (saloons, small, compact, suv, etc.).
Gọi bộ dữ liệu ggplot2 để dùng hiệu quả hơn cho các phép tính
options(repos = c(CRAN = "http://cran.rstudio.com/"))
install.packages("ggplot2")
## Installing package into 'C:/Users/ASUS/AppData/Local/R/win-library/4.3'
## (as 'lib' is unspecified)
## package 'ggplot2' successfully unpacked and MD5 sums checked
##
## The downloaded binary packages are in
## C:\Users\ASUS\AppData\Local\Temp\Rtmp8COC3f\downloaded_packages
library(ggplot2)
library(dplyr)
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
library(scales)
library(DT)
datatable(mpg)
ggplot(mpg, aes(x = cty)) +
geom_density(fill = "skyblue", color = "black") +
labs(title = "Phân phối tiêu thụ nhiên liệu trong thành phố", x = "Tiêu thụ nhiên liệu trong thành phố", y = "Mật độ")
Biểu đồ cho thấy phân phối của mức tiêu thụ nhiên liệu của các xe hơi trong thành phố tập trung chủ yếu vào một phạm vi giới hạn, với mật độ cao tập trung ở một khoảng giá trị cụ thể là từ 15mpg đến 20mpg.
Giải thích câu lệnh:
-ggplot(mpg, aes(x = cty)): Xác định bộ dữ liệu và ánh xạ biến “cty” vào trục x.
-geom_density(fill = “skyblue”, color = “black”): Vẽ biểu đồ density với màu nền là “skyblue” và màu đường viền là “black”.
-labs(title = “Phân phối mật độ của tiêu thụ nhiên liệu trong thành phố”, x = “Tiêu thụ nhiên liệu trong thành phố (mpg)”, y = “Mật độ”): Đặt tiêu đề cho biểu đồ và ghi nhãn cho trục x và trục y.
ggplot(mpg, aes(x = hwy)) +
geom_density(fill = "lightgreen", color = "darkblue") +
labs(title = "", x = "Tiêu thụ nhiên liệu trên xa lộ", y = "Mật độ") +
facet_wrap(~ drv)
Các nhóm loại truyền động với mật độ phân phối tập trung ở mức tiêu thụ nhiên liệu thấp hơn thì được coi là có khả năng tiết kiệm nhiên liệu và hiệu suất tốt hơn.
Giải thích câu lệnh:
-ggplot(mpg, aes(x = hwy)): Xác định bộ dữ liệu và ánh xạ biến “hwy” vào trục x.
-geom_density(fill = “lightgreen”, color = “darkblue”): Vẽ biểu đồ density với màu nền là “lightgreen” và màu đường viền là “darkblue”.
-labs(title = ““, x =”Tiêu thụ nhiên liệu trên xa lộ (mpg)“,y =”Mật độ”): Đặt tiêu đề cho biểu đồ và ghi nhãn cho trục x và trục y.
-facet_wrap(~ drv): Phân chia đồ thị thành các ô nhỏ (facets) dựa trên giá trị của biến drv.Tạo ra một lưới các biểu đồ con, mỗi biểu đồ sẽ hiển thị phân phối của tiêu thụ nhiên liệu trên xa lộ cho mỗi giá trị của biến “drv”.
ggplot(mpg, aes(x = cty)) +
geom_density(aes(fill = drv, color = drv), alpha = 0.5) +
labs(title = "",x = "Tiêu thụ nhiên liệu trong thành phố",y = "Mật độ")+
facet_wrap(~ class) +
scale_fill_manual(values = c("lightgreen", "lightblue", "lightpink")) +
scale_color_manual(values = c("darkgreen", "darkblue", "darkred"))
Mật độ tiêu thụ nhiên liệu của các xe 2 chỗ ngồi tập trung chủ yếu ở mức thấp, dưới 17 mpg.
Mật độ tiêu thụ nhiên liệu của xe compact có xu hướng tập trung chủ yếu vào khoảng từ 15 đến 25 mpg.
Mật độ tiêu thụ nhiên liệu cho các loại xe midsize tập trung chủ yếu vào khoảng từ 13 đến 25 mpg.
Phân phối của tiêu thụ nhiên liệu cho minivan tập trung chủ yếu dưới 19mpg
Mật độ tiêu thụ nhiên liệu của pickup tập trung chủ yếu dưới 17mpg.
Mật độ tiêu thụ nhiên liệu cho subcompact phân bố đa dạng trải dài từ 13mpg đến 30mpg
SUV có mật độ tiêu thụ nhiên liệu có dạng lệch tráimật độ tập trung từ 10mpg đến 20mpg
Giải thích câu lệnh:
-ggplot(mpg, aes(x = cty)): Xác định bộ dữ liệu và ánh xạ biến “cty” vào trục x.
-geom_density(aes(fill = drv, color = drv), alpha = 0.5): Vẽ biểu đồ density với màu nền là và màu đường viền theo biến drv để phân biệt các nhóm lái xe. alpha = 0.5 thêm độ trong suốt cho các dải mật độ.
-labs(title = ““, x =”Tiêu thụ nhiên liệu trong thành phố (mpg)“, y =”Mật độ”): Đặt tiêu đề và nhãn cho trục x và trục y của đồ thị.
-facet_wrap(~ class): Phân chia đồ thị thành các ô nhỏ (facets) dựa trên giá trị của biến class. Tạo ra một lưới các biểu đồ con, mỗi biểu đồ sẽ hiển thị một phân nhóm của dữ liệu.
-scale_fill_manual(values = c(“lightgreen”, “lightblue”, “lightpink”)): Thiết lập màu fill bằng cách chọn bộ màu từ “lightgreen”, “lightblue”, và “lightpink”.
-scale_color_manual(values = c(“darkgreen”, “darkblue”, “darkred”)): thiết lập màu sắc cho biên của các dải mật độ
mpg %>% group_by(class) %>% summarise(n = n()) %>%
ggplot(aes(x = '', y = n, fill = class)) +
geom_col() +
geom_text(aes(label = n), position = position_stack(vjust = 1))
Số lượng xe 2 chỗ ngồi là ít nhất trong tập dữ liệu
Số lượng xe compact chiếm một phần lớn trong tập dữ liệu, vượt trội so với các loại xe khác.
Số lượng xe midsize lớn, tuy nhiên ít hơn so với xe compact.
Số lượng minivan chiếm một phần nhỏ trong tập dữ liệu, ít hơn so với nhiều loại xe khác.
Số lượng pickup có số lượng tương đối so với các loại xe khác.
Subcompact lớn, nhưng không nhiều bằng các loại xe compact và midsize.
SUV chiếm một tỷ lệ lớn nhất trong tập dữ liệu.
Giải thích câu lệnh
-mpg %>% group_by(class) %>% summarise(n = n()): dữ liệu mpg được nhóm lại theo biến class, sau đó sử dụng hàm summarise() để tính tổng số lượng mẫu trong mỗi nhóm và lưu kết quả vào cột mới đặt tên là n.
-ggplot(aes(x = ’‘, y = n, fill = class)): ggplot() được sử dụng để bắt đầu tạo biểu đồ. Trong aes(), ta chỉ định rằng biểu đồ sẽ không có trục x cụ thể (x =’’), giá trị y sẽ là n (số lượng) và các phần sẽ được tô màu theo biến class.
-geom_col(): được dùng để tạo các cột trong biểu đồ. Các cột này sẽ có chiều cao tương ứng với số lượng mỗi loại xe.
-geom_text(aes(label = n), position = position_stack(vjust = 1)): geom_text() được dùng để hiển thị số lượng (n) của mỗi loại xe trên biểu đồ. position = position_stack(vjust = 1) được sử dụng để đặt văn bản ở vị trí phía trên cùng của mỗi phần.
mpg %>% group_by(cyl) %>% summarise(n = n()) %>%
ggplot(aes(x = '', y = n, fill = cyl)) +
geom_col() +
geom_text(aes(label = n), position = position_stack(vjust = 1)) +
coord_polar(theta = "y")
Xe có 4 xi-lanh và Xe có 6 xi-lanh chiếm tỷ lệ lớn nhất trong tập dữ liệu, chúng tương đương nhau được biểu diễn bằng một phần lớn của vòng tròn.
Số lượng xe có 5 xi-lanh có số lượng ít nhất trong tập dữ liệu, được biểu diễn bằng một phần rất nhỏ trong vòng tròn.là đáng kể nhưng ít hơn so với xe có 4 xi-lanh, thể hiện bằng một phần nhỏ hơn trong vòng tròn.
Xe có 8 xi-lanh có số lượng đáng kể nhưng ít hơn so với xe có 4 xi-lanhvà 6 xi-lanh thể hiện bằng một phần lớn trong vòng tròn.
Giải thích câu lệnh:
-mpg %>% group_by(cyl) %>% summarise(n = n()): dữ liệu mpg được nhóm lại theo biến cyl (số xy lanh), sau đó sử dụng hàm summarise() để tính tổng số lượng mẫu trong mỗi nhóm và lưu kết quả vào cột mới đặt tên là n.
-ggplot(aes(x = ’‘, y = n, fill = cyl)): ggplot() được sử dụng để bắt đầu tạo biểu đồ. Trong aes(), ta chỉ định rằng biểu đồ sẽ không có trục x cụ thể (x =’’), giá trị y sẽ là n (số lượng) và các phần sẽ được tô màu theo biến cyl.
-geom_col(): được dùng để tạo các cột trong biểu đồ. Các cột này sẽ có chiều cao tương ứng với số lượng mỗi loại xi lanh.
-geom_text(aes(label = n), position = position_stack(vjust = 1)): geom_text() được dùng để hiển thị số lượng (n) của mỗi loại xi lanh trên biểu đồ. position = position_stack(vjust = 0.5) được sử dụng để đặt văn bản ở vị trí giữa của mỗi phần.
-coord_polar(theta = “y”): Chuyển đổi biểu đồ thành dạng Pie chart, trong đó góc theta được xác định bằng giá trị của biến y, tức là số lượng xe.
mpg %>% group_by(fl) %>% summarise(n = n()) %>%
ggplot(aes(x = '', y = n, fill = fl)) +
geom_col() +
geom_text(aes(label = n), position = position_stack(vjust = 0.5)) +
coord_polar(theta = "y") +
scale_fill_manual(values = c("darkorange", "skyblue", "darkgreen", "darkred", "darkcyan")) +
theme_void()
R: Nhiên liệu xăng thông thường được sử dụng rộng rãi nhất trong tập dữ liệu
C:Số lượng xe sử dụng nhiên liệu CNG là ít nhất trong tập dữ liệu
Giải thích câu lệnh:
-mpg %>% group_by(fl) %>% summarise(n = n()): dữ liệu mpg được nhóm lại theo biến fl, sau đó sử dụng hàm summarise() để tính tổng số lượng xe mỗi nhóm và lưu kết quả vào cột mới đặt tên là n.
-ggplot(aes(x = ’‘, y = n, fill = fl)): ggplot() được sử dụng để bắt đầu tạo biểu đồ. Trong aes(), ta chỉ định rằng biểu đồ sẽ không có trục x cụ thể (x =’’), giá trị y sẽ là n (số lượng) và các phần sẽ được tô màu theo biến fl.
-geom_col(): được dùng để tạo các cột trong biểu đồ. Các cột này sẽ có chiều cao tương ứng với số lượng mỗi loại nhiên liệu.
-geom_text(aes(label = n), position = position_stack(vjust = 1)): geom_text() được dùng để hiển thị số lượng (n) của mỗi loại nhiên liệu trên biểu đồ. position = position_stack(vjust = 0.5) được sử dụng để đặt văn bản ở vị trí giữa của mỗi phần.
-coord_polar(theta = “y”): Chuyển đổi biểu đồ thành dạng Pie chart, trong đó góc theta được xác định bằng giá trị của biến y, tức là số lượng nhiên liệu.
-scale_fill_manual(values = c(“darkorange”, “skyblue”, “darkgreen”, “darkred”, “darkcyan”, “darkmagenta”)): Tùy chỉnh màu sắc của các phần trên biểu đồ. Mỗi loại nhiên liệu được ánh xạ vào một màu sắc cụ thể
-theme_void(): Loại bỏ các chi tiết của biểu đồ như trục và lưới, chỉ hiển thị các phần của Pie chart.
m <- as.data.frame(table(mpg$drv))
colnames(m) <- c("Loại dẫn động", "Số lượng")
t <- sum(m$`Số lượng`)
m$p <- with(m, `Số lượng` / t * 100)
ggplot(m, aes(x = "", y = `Số lượng`, fill = `Loại dẫn động`, label = paste(round(p, 1), "%"))) +
geom_col() +
geom_text(position = position_stack(vjust = 0.5)) +
coord_polar(theta = "y") +
scale_fill_manual(values = c("lightgreen", "lightblue", "lightpink")) +
theme_void()
Loại dẫn động cầu trước(f) chiếm tỷ lệ 45.3% lớn nhất trong tập dữ liệu
Loại dẫn động cầu sau(r) chiếm tỷ lệ 10.7% thấp nhất trong tập dữ liệu
Giải thích câu lệnh:
-m <- as.data.frame(table(mpg$drv)): Đếm số lượng mỗi loại dẫn động (drv) (‘f’, ‘r’, ‘4’) trong dữ liệu mpg và biến kết quả thành một data frame.
-colnames(m) <- c(“Loại dẫn động”, “Số lượng”): đặt tên cột cho data frame m, trong đó “Loại dẫn động” là tên của cột chứa loại dẫn động và “Số lượng” là tên của cột chứa số lượng xe.
-t <- sum(m$‘Số lượng’): Tính tổng số lượng xe bằng cách tổng của cột ‘Số lượng’ trong ‘m’.
-m$p <- with(m, ‘Số lượng’ / t * 100): Tính phần trăm cho mỗi loại dẫn động và lưu vào một cột mới có tên là ‘p’.
-ggplot(m, aes(x = ““, y = ‘Số lượng’, fill = ‘Loại dẫn động’, label = paste(round(p, 1),”%“))): Thiết lập dữ liệu ‘x’ được đặt là một chuỗi rỗng để tạo biểu đồ Pie chart. ‘y’ là số lượng xe, ‘fill’ là loại dẫn động, và ‘label’ là nhãn cho các phần của biểu đồ, bao gồm phần trăm.
-geom_col(): được dùng để tạo các cột trong biểu đồ. Các cột này sẽ có chiều cao tương ứng với số lượng mỗi loại dẫn động.
-geom_text(position = position_stack(vjust = 0.5)): Thêm nhãn cho các phần trên biểu đồ, đặt văn bản ở vị trí trung tâm của mỗi phần.
-coord_polar(theta = “y”): Chuyển đổi biểu đồ thành dạng Pie chart, trong đó góc theta được xác định bằng giá trị của biến y, tức là số lượng loại dẫn động.
-labs(title = ““): Đặt tiêu đề của biểu đồ là một chuỗi rỗng.
-scale_fill_manual(values = c(“lightgreen”, “lightblue”, “lightpink”)): Tùy chỉnh màu sắc của các phần trên biểu đồ Pie chart.
-theme_void(): Loại bỏ các chi tiết của biểu đồ như trục và lưới, chỉ hiển thị các phần của Pie chart.
mpg %>% ggplot(aes(x = displ, y = hwy)) +
geom_point() +
xlab('Dung tích động cơ (lít)') +
ylab('Tiêu thụ nhiên liệu trên đường cao (mpg)')
Có một xu hướng rõ ràng là, nếu dung tích động cơ tăng lên, thì tiêu thụ nhiên liệu trên đường cao có xu hướng giảm đi. Điều này có ý nghĩa là các xe có dung tích động cơ lớn thường tiêu thụ ít nhiên liệu hơn trên đường cao so với các xe có dung tích động cơ nhỏ và ngược lại.
giải thích câu lệnh:
-mpg %>% ggplot(aes(x = displ, y = hwy)) +: sử dụng dữ liệu từ bộ dữ liệu mpg và thiết lập aesthetics (thẩm mỹ) cho biểu đồ. Trục x sẽ là “displ” (dung tích động cơ) và trục y sẽ là “hwy” (Tiêu thụ nhiên liệu trên đường cao ).
-geom_point() : Dòng này thêm các điểm vào biểu đồ để tạo thành một biểu đồ scatter plot. Mỗi điểm trên biểu đồ sẽ đại diện cho một quan sát trong bộ dữ liệu, với tọa độ x và y tương ứng.
-xlab(‘Dung tích động cơ (lít)’) +: Dòng này đặt nhãn cho trục x của biểu đồ, mô tả rằng trục này đo dung tích động cơ trong đơn vị “lít”.
-ylab(‘Tiêu thụ nhiên liệu trên đường cao (mpg)’): Dòng này đặt nhãn cho trục y của biểu đồ, mô tả rằng trục này đo dòng hạng tiêu thụ nhiên liệu trên đường cao trong đơn vị “mpg” (miles per gallon - dòng hạng tiêu thụ nhiên liệu trên đường cao).
mpg %>% ggplot(aes(x = displ, y = cyl, color = class)) +
geom_point() +
xlab('Dung tích động cơ (lít)') +
ylab('Số xi lanh')
Có một xu hướng chung là dung tích động cơ thường tăng theo cùng một hệ số với số xi-lanh. Điều này có ý nghĩa là các phương tiện có dung tích động cơ lớn thường có số xi-lanh lớn hơn và ngược lại.
Giải thích câu lệnh:
-mpg %>% ggplot(aes(x = displ, y = cyl,color = class)): sử dụng dữ liệu từ bộ dữ liệu mpg và thiết lập aesthetics (thẩm mỹ) cho biểu đồ. Trục x sẽ là “displ” (dung tích động cơ) và trục y sẽ là “cyl” (số xi lanh). color = class định nghĩa rằng màu sắc của các điểm trên biểu đồ sẽ biểu diễn dữ liệu từ cột “class”
-geom_point() : Dòng này thêm các điểm vào biểu đồ để tạo thành một biểu đồ scatter plot. Mỗi điểm trên biểu đồ sẽ đại diện cho một quan sát trong bộ dữ liệu, với tọa độ x và y tương ứng.
-xlab(‘Dung tích động cơ (lít)’): đặt nhãn cho trục hoành của biểu đồ, với nội dung là “Dung tích động cơ (lít)”.
-ylab(‘Số xi lanh’):đặt nhãn cho trục tung của biểu đồ, với nội dung là “Số xi lanh”.
mpg %>% ggplot(aes(x = cty, y = hwy)) +
geom_point(color = 'red') +
geom_smooth(method = 'lm', color = 'green')
## `geom_smooth()` using formula = 'y ~ x'
Có một mối quan hệ tương đối giữa tiêu thụ nhiên liệu trong thành phố và trên đường cao. Điều này có nghĩa là các phương tiện có tiêu thụ nhiên liệu cao trong thành phố thường cũng có tiêu thụ nhiên liệu cao trên đường cao, và ngược lại.
Giải thích câu lệnh:
-mpg %>% ggplot(aes(x = cty, y = hwy)) +: sử dụng dữ liệu từ bộ dữ liệu mpg và thiết lập aesthetics (thẩm mỹ) cho biểu đồ. Trục x sẽ là “cyl” (Tiêu thụ nhiên liệu trong thành phố) và trục y sẽ là “hwy” (Tiêu thụ nhiên liệu trên đường cao ).
-geom_point(color = ‘red’): Hàm này thêm các điểm vào biểu đồ, tạo ra biểu đồ phân tán. Màu sắc của các điểm được đặt là đỏ
-geom_smooth(method = ‘lm’, color = ‘green’):thêm một đường cong phù hợp vào biểu đồ để minh họa mối quan hệ giữa các điểm dữ liệu. khi ta dùng method = ‘lm’ sử dụng hồi quy tuyến tính để phù hợp với dữ liệu. Màu sắc của đường cong được đặt là màu xanh (color = ‘green’).
mpg %>% ggplot(aes(x = cty, y = cyl)) +
geom_point(color = 'blue') +
geom_smooth(method = 'lm', color = 'orange') +
facet_wrap(~ class)
## `geom_smooth()` using formula = 'y ~ x'
Giải thích câu lệnh:
-mpg %>% ggplot(aes(x =cty , y = cyl)) +: sử dụng dữ liệu từ bộ dữ liệu mpg và thiết lập aesthetics (thẩm mỹ) cho biểu đồ. Trục x sẽ là “cty” (tiêu thụ nhiên liệu trong thành phố) và trục y sẽ là “cyl” (số xi-lanh).
-geom_point(color = ‘blue’):Hàm này thêm các điểm vào biểu đồ, tạo ra biểu đồ phân tán. Màu sắc của các điểm được đặt là xanh.
-geom_smooth(method = ‘lm’, color = ‘orange’):thêm một đường cong phù hợp vào biểu đồ để minh họa mối quan hệ giữa các điểm dữ liệu. khi ta dùng method = ‘lm’ sử dụng hồi quy tuyến tính để phù hợp với dữ liệu. Màu sắc của đường cong được đặt là màu cam (color = ‘orange’).
-facet_wrap(~ class): Phân chia đồ thị thành các ô nhỏ (facets) dựa trên giá trị của biến class. Tạo ra một lưới các biểu đồ con, mỗi biểu đồ sẽ hiển thị một phân nhóm của dữ liệu.
mpg %>% group_by(class) %>% summarise(n = n()) %>%
ggplot(aes(x = class, y = n)) +
geom_col(fill = 'blue') +
geom_text(aes(label = n), vjust = -0.5, color = 'red') +
labs(x = 'Class', y = 'Count')
Giải thích câu lệnh:
-mpg %>% group_by(class) %>% summarise(n = n()): Nhóm các hàng của bộ dữ liệu theo phân loại. sau đó Tính tổng số lượng xe của mỗi loại xe và tạo một cột mới với tên là n.
-ggplot(aes(x = class, y = n)): Vẽ một biểu đồ mới với class trên trục x, n trên trục y
-geom_col(fill = ‘blue’): Vẽ biểu đồ cột với màu fill là blue
-geom_text(aes(label = n), vjust = -0.5, color = ‘red’):Thêm văn bản vào biểu đồ, hiển thị số lượng mẫu (n) trên mỗi cột. Văn bản này được đặt ở vị trí được dịch lên phía trên so với vị trí mặc định của nó trên đỉnh của cột và có màu đỏ(tránh chồng lên cột và giữ cho văn bản dễ đọc hơn.)
-labs(x = ‘Class’, y = ‘Count’):Đặt nhãn cho trục x là “Class” và trục y là “Count”.
mpg %>%group_by(manufacturer) %>%summarise(n = n()) %>%
ggplot(aes(x = manufacturer, y = n)) +
geom_bar(stat = "identity") +
labs(x = 'Nhà sản xuất', y = 'Số lượng') +
coord_flip()
Giải thích câu lệnh:
-mpg %>% group_by(manufacturer) %>% summarise(n = n()): Nhóm các hàng của bộ dữ liệu theo nhà sản xuất của xe. sau đó Tính tổng số lượng xe của mỗi nhà sản xuất và tạo một cột mới với tên là n.
-ggplot(aes(x = manufacturer, y = n)): Vẽ một biểu đồ mới với manufacturer trên trục x, n trên trục y
-geom_bar(stat = “identity”): Tạo một biểu đồ cột, trong đó chiều cao của các cột được xác định bằng giá trị của n.
-labs(x = ‘Nhà sản xuất’, y = ‘Số lượng’): Đặt nhãn cho trục x là “Nhà sản xuất” và trục y là “Số lượng”.
-coord_flip(): Đảo ngược trục x và y để biểu đồ có hướng dọc thay vì ngang.
mpg %>%group_by(manufacturer, year) %>%summarise(n = n()) %>%
ggplot(aes(x = manufacturer, y = n)) +
geom_bar(stat = "identity") +
labs(x = 'Nhà sản xuất', y = 'Số lượng') +
facet_wrap(~year, scales = "free_y") +
theme(axis.text.x = element_text(angle = 45, hjust = 1))
## `summarise()` has grouped output by 'manufacturer'. You can override using the
## `.groups` argument.
Giải thích câu lệnh:
-mpg %>%group_by(manufacturer, year) %>%summarise(n = n()) %>%: Nhóm dữ liệu trong mpg theo manufacturer (nhà sản xuất) và year (năm), sau đó tính tổng số lượng mẫu trong mỗi nhóm và lưu vào cột mới có tên là n.
-ggplot(aes(x = manufacturer, y = n)); vẽ biểu đồ trục x là manufacturer và trục y là n.
-geom_bar(stat = “identity”) : Vẽ biểu đồ cột, sử dụng stat = “identity” để đảm bảo các giá trị y được sử dụng trực tiếp như đã tính toán trong bước trước đó.
-labs(x = ‘Nhà sản xuất’, y = ‘Số lượng’) : Đặt nhãn cho trục x là “Nhà sản xuất” và trục y là “Số lượng”.
-facet_wrap(~year) : Chia biểu đồ thành các nhóm con dựa trên biến year (năm), mỗi nhóm con sẽ tương ứng với một năm khác nhau. để tạo ra 1 lưới các biểu đồ con
-theme(axis.text.x = element_text(angle = 45, hjust = 1)): Tùy chỉnh giao diện (theme) của biểu đồ, trong đó thay đổi góc của văn bản trên trục x thành 45 độ và điều chỉnh vị trí ngang của văn bản (hjust) thành 1 để tránh chồng chéo. Điều này giúp văn bản dễ đọc hơn, đặc biệt là khi có nhiều nhãn trên trục x.
ggplot(mpg, aes(x = hwy)) +
geom_histogram(binwidth = 2, fill = "pink", color = "black") +
labs(x = "hwy", y = "mật độ")
giải thích các câu lệnh
-ggplot(mpg, aes(x = hwy)): Xác định bộ dữ liệu và ánh xạ biến “hwy” vào trục x.
-geom_histogram(binwidth = 2, fill = “pink”, color = “black”): Vẽ biểu đồ histogram với các cột được phân chia binwidth = 2 , tức là mỗi cột biểu diễn một khoảng giá trị có độ rộng 2 đơn vị. Màu nền fill của cột được đặt là “pink” và màu viền cột là “black”.
labs(x = “hwy”, y = “mật độ”): Đặt nhãn cho trục x là “hwy” (iêu thụ nhiên liệu trên xa lộ) và trục y là “mật độ”
ggplot(mpg, aes(x = hwy)) +
geom_histogram(binwidth = 2, fill = "orange", color = "black") +
labs(x = "tiêu thụ nhiên liệu trên xa lộ", y = "mật độ") +
facet_wrap(~class)
Giải thích các câu lệnh:
-ggplot(mpg, aes(x = hwy)): Xác định bộ dữ liệu và ánh xạ biến “hwy” vào trục x.
-geom_histogram(binwidth = 2, fill = “orange”, color = “black”): Vẽ biểu đồ histogram với các cột được phân chia bằng binwidth=2, tức là mỗi cột biểu diễn một khoảng giá trị có độ rộng 2 đơn vị. Màu fill của cột được đặt là “orange” và màu viền cột là “black”.
labs(x = “tiêu thụ nhiên liệu trên xa lộ”, y = “mật độ”): Đặt nhãn cho trục x là “tiêu thụ nhiên liệu trên xa lộ” và trục y là “mật độ”.
facet_wrap(~class): Chia biểu đồ thành các nhóm con dựa trên biến class (loại xe), mỗi nhóm con sẽ tương ứng với một loại xe khác nhau. tạo ra 1 lưới các biểu đồ con